为什么AJAX请求必须有这个?

时间:2015-01-02 01:52:17

标签: ajax

<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请求必须有一个占位符? (在这种情况下,它是'数据')。如果你删除它,或使用任何其他单词,它仍然可以正常工作。有人可以解释一下原因吗?

1 个答案:

答案 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);
    ...
});