好的我正在構建一些東西,它向一個服務器發出一個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