gpt4 book ai didi

javascript - 每次我通过按钮调用ajax时如何重用jsonp url中的jsonp响应变量?

转载 作者:行者123 更新时间:2023-11-28 20:16:13 26 4
gpt4 key购买 nike

我调用 jsonp 函数并获得响应,但我想在下次按下按钮时使用 MaxTagId(var MaxTagId = data.pagination.next_max_tag_id;) 。我的代码现在无法在每次按下按钮时使用 MaxTagId 值,因为每次来自 instagram api 的响应都是相同的。如果它使用了 MaxTagId 值,那么每次我单击按钮时,我应该得到新的响应,因为 jsonp url 在每次调用时都会发生变化!任何人都可以告诉我每次按下按钮时在 jsonp url 中使用 MaxTagID 做错了什么吗?

<head>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>


<script>
function callApi2(){
$.ajax({
type: "GET",
dataType: "jsonp",
cache: false,
url: "https://api.instagram.com/v1/tags/mango/media/recent?access_token=xxxxxxx&max_tag_id=+MaxTagId+",
success: function(data) {

alert("Next Max Tag Id:"+data.pagination.next_max_tag_id);
document.myform.outputtext.value = document.myform.outputtext.value+data.pagination.next_max_tag_id+'\n' ;
var MaxTagId = data.pagination.next_max_tag_id;

console.log(data);

for (var i = 0; i < 21; i++) {

$(".content").append("<img class='SC-instagram-image' src='" + data.data[i].images.low_resolution.url +"' />");


}


}
});

}
</script>


</head>
<body>

<div class="content"></div>


<form id="myform" name="myform" action="./ok.php" method="post">
<td><textarea rows="6" cols="15" name="outputtext" style="width: 99%;"></textarea></td>
</form>



<button onclick="callApi2()">Start</button>


</html>

最佳答案

您应该在函数外部创建一个新变量来存储 ID。

var maxTagId = null;

function callApi2() {

$.ajax({
type: "GET",
dataType: "jsonp",
cache: false,
url: "https://api.instagram.com/v1/tags/mango/media/recent?access_token=xxxxxxx" + ( maxTagId ? "&max_tag_id=" + maxTagId : ""),
success: function(data) {

maxTagId = data.pagination.next_max_tag_id;
}
});

}

当然,这些变量现在位于全局命名空间中,因此理想情况下您可以将它们放入自调用函数中。欲了解更多信息,请参阅:http://marcofranssen.nl/writing-modular-javascript-without-polluting-the-global-namespace/

关于javascript - 每次我通过按钮调用ajax时如何重用jsonp url中的jsonp响应变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19149170/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com