我正在阅读有关 Ajax 和 jQuery 的内容,并且看到了以下代码:
$.ajax({
url: "test.html",
cache: false
}).done(function( html ) {
$("#results").append(html);
});
我在任何地方都没有看到“html”的声明,代码怎么知道要附加什么?
PS这可能是一个愚蠢的问题,但我在任何地方都找不到这个问题的答案:/
当 ajax 调用完成时,它会将数据传递到为 done 定义的函数中。
.done(function(html){
html 在这里不是“定义”的,而是接收数据的变量的名称。一旦定义了占位符,您就可以在函数中的任何位置使用它。
例如,如果您有
function myFunc(foo){
alert(foo);
}
然后做了
myFunc(1234);
//result 1234
myFunc("test");
//result "test"
所以,真正的 html 正是这个人选择调用从 ajax 调用接收到的数据。如果您阅读 jQuery 网站上的教程,大多数时候他们将这个变量命名为“数据”