我正在尝试使用嵌套的ajax调用,但它无法正常工作。在外部.get调用中,我从php文件中提取ISBN数据。这将用于填充名为“booklist”的html表。这个工作正常。内部.get调用应该验证ISBN,如果它返回有效,然后附加一个复选标记,但最后一部分不起作用。 在这段代码中,我假设变量“index”可以在内部.get中看到。这不是真的吗?
$(document).ready(function()
{
$("input#autofill").click(function()
{
$.get("last_year_ISBN.php",
function(data)
{
var elements = $('#booklist .ISBN_number');
$.each(data,
function(index, obj)
{
$(elements[index]).val(obj[16]);
$.get("validate_isbn.php",
function(answer)
{
if (answer == "valid")
{
$(elements[index]).append(" < img src = 'pics/green_checkmark.png' > ");
}
},
"text");
})
},
"json");
});
$("input#clearISBNs").click(function()
{
var elements=$('#booklist .ISBN_number');
$.each(elements,
function(index, value)
{
$(elements[index]).val("");
});
});
});
答案 0 :(得分:0)
它不应该产生差异,但尝试在get调用之外创建函数作为变量...
function(index, obj){
var ele = $(elements[index]).val(obj[16]);
var func = function(answer){
if (answer == "valid") {
ele.append('<img src="pics/green_checkmark.png" />');
}
};
$.get("validate_isbn.php", func, "text");
});