好的我正在构建一些东西,它向一个服务器发出一个ajax请求,在那里它确定了它需要的url,然后向另一个地方发出一个新的ajax请求。一切都在进步感谢所有在SO =)的帮助..但是我再次卡住了。我很努力让变量返回到我需要的不同功能。第二(JSONP)请求返回一个JSON功能看起来像:帮助在Ajax回调中的函数之间传递变量
jsonResponse(
{"it.exists":"1"},"");
和我的代码...
var img = "null";
var z = "null";
$(document).ready(function()
{
$.ajax({
type: "GET",
url: "connect.php",
dataType: "xml",
success: function parseXml(data)
{
$(data).find("ITEM").each(function()
{
query = $("SKU", this).text();
query = 'http://domain.com/' + query + '?req=exists,json';
img = $("SKU", this).text();
img = '<img src="http://domain.com/' + img + '">';
var date =$("LAST_SCAN" , this).text();
$.ajax({
url: query,
dataType: 'jsonp'
});
$("table").append('<tr>'+'<td>' + (date) + '</td>' + '<td>' + (z) + '</td>');
});
}
});
});
// function required to interpret jsonp
function jsonResponse(response){
var x = response["it.exists"];
// console.log(x);
if (x == 0) {
console.log("NO");
var z = "NO IMG";
}
if (x == 1) {
console.log(img);
//this only returns the first image path from the loop of the parseXml function over and over
var z = (img);
}
return z;
}
所以,我想我的问题是两个舞伴..一个如何获得img变量循环到if语句中,然后一次工作如何返回该变量以用于第一个xml解析器?
您的代码缩进很差,缺少一些结束括号('}'),并有额外的分号(';')。这使得你很难理解你的代码以及你正在尝试做什么。 – gilly3 2011-05-27 22:43:15
好吧,我清理它,所以希望它不那么困惑... – Zac 2011-05-27 23:51:14
必须将JSONP回调命名为“jsonResponse”?或者你能否在你的请求中指定回调名称?通常,您可以在JSONP请求中指定回调名称,但在这里我看不到您这样做。 – gilly3 2011-05-27 23:59:18