javascript - 成功: function(data); not working with named function

标签 javascript jquery

我目前对 jquery ajax 成功响应使用匿名函数。

success: function(data){
  code
},

当尝试使用命名函数时:

success: success(data),

它声称未设置变量数据。我想我可以做到

success: function(data){
  success(data)
},

但这感觉好像不是应该如何完成的。为什么会这样?我该怎么办?

最佳答案

这是因为 JQuery 期望的是对函数的引用,而不是函数调用

JQuery 需要知道必须调用什么函数。使用 success(data) 您将传递函数调用 success(data)结果(可以是任何内容,也可以是 void - 否)结果)完全没有给出要做什么的线索。

引用是指向一个对象的东西,在本例中是一个“函数对象”。 函数调用可以被视为要执行的 Action ,该 Action 给出或不给出作为表达式计算的结果。

只需使用:

success: success

关于javascript - 成功: function(data); not working with named function,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11532514/

相关文章:

javascript - 我想将 Javascript 数组存储为 Cookie

javascript - 如果包含不同的变量值如何隐藏div

javascript - 使用选择器在 jQuery 中的性能

javascript - 将值从一个对象复制到另一个对象,忽略新属性

javascript - 不允许从 url 获取图像,而是从另一个 URL 获取图像

javascript - IE 中的按键问题(在 jquery 中)

javascript - 文本查找和替换 chrome 扩展 - 它们如何工作得如此之快?

javascript - 在 javascript 变量中使用来自发布请求的结果

jquery - 为什么 Asp.Net MVC 5 将 @Scripts.Render ("~/bundles/jquery") 放在 _Layout.cshtml 的底部?

jquery - FlotChart 0.8.2 时间模式需要 flot.time 插件