<script type="text/javascript">
$(document).ready(function() {
$("button").click(function(){
$.ajax({
type: 'POST',
url: 'script.php',
success: function(data) {
alert(data);
$("p").text(data);
}
});
});
});
</script>
为什么AJAX请求必须有一个占位符? (在这种情况下,它是'数据')。如果你删除它,或使用任何其他单词,它仍然可以正常工作。有人可以解释一下原因吗?
答案 0 :(得分:1)
您的data
此处是返回值的别名(您对script.php
的ajax请求的“答案”),因此您可以转而使用它。它不是函数本身的占位符。
你如何命名取决于你 - 就像在c ++中使用lambda参数的名字一样(在这种情况下我发现它们类似于JavaScript匿名函数):
[](string data){
... = data...
}
或其他语言的函数/方法的“out”参数。
对于C ++类比:如何将lambda作为参数传递给另一个方法(当然,你必须定义Button
类):
button.click(/*...,*/ [&](string data){ //"on success"
MessageBox(NULL, data.c_str(), "Alert", NULL);
...
});