请问 $.ajax({})函数中 success: function 这个语句中 success和function 的关系是什么,为什么中间加一个冒号隔开

eisldkw 2019-05-21 10:56:55
$.ajax({
type: "post",
url: "/Home/GetQRCode1",
data: {
time: new Date(),
productId:7788
},
success: function (json) {
$.messager.progress('close');//记得关闭
if (json.result) {
$('#QRCode1').qrcode(json.str); //生成二维码
}
else {
$('#QRCode1').html("二维码生成失败");
}
}
})


请问以上代码中 success: function 这个语句中
1、success和function 的关系是什么,为什么中间加一个冒号隔开,
2、success仅仅是一个标签,还是不是标签而是一个变量
...全文
380 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
eisldkw 2019-05-21
  • 打赏
  • 举报
回复
引用 6 楼 stherix 的回复:
[quote=引用 5 楼 eisldkw 的回复:]
[quote=引用 4 楼 如果有了可惜 的回复:]
$.ajax()接收一个 对象做 options,success 是这个对象的属性名,属性值是一个函数。通常来讲我们叫属性值为funciton的属性为这个对象的方法。success 是人家规定的了,不能改变。可以百度 jquery API 中文文档系统看一下。


非常的感谢,请问,这个sucess在本次调用 中是第4个参数,请问它必须放置在第四这个位置吗?[/quote]

和位置无关,但是名字一定要对
这个是json对象
和下面写法是一样的

var obj = {}
obj.type = "post"
//中间省略
obj.success = function(json){
....
}
$.ajax(obj)
[/quote]

非常感谢。
eisldkw 2019-05-21
  • 打赏
  • 举报
回复
引用 7 楼 如果有了可惜 的回复:
在对象里的属性我们不叫参数,叫属性(值不是function)和方法(值为funciton)。

在对象中,属性是无序的。所以你对于 success 的描述不应该为 第四个参数。应该为 success 方法。

参数是针对函数的,function( arg1, arg2 ){}这两个叫做参数。

因为属性是无序的,所以放在哪个位置都无所谓,重要的是 success 不能错



非常感谢。感激之情无以言表。
如果有了可惜 2019-05-21
  • 打赏
  • 举报
回复
在对象里的属性我们不叫参数,叫属性(值不是function)和方法(值为funciton)。

在对象中,属性是无序的。所以你对于 success 的描述不应该为 第四个参数。应该为 success 方法。

参数是针对函数的,function( arg1, arg2 ){}这两个叫做参数。

因为属性是无序的,所以放在哪个位置都无所谓,重要的是 success 不能错
stherix 2019-05-21
  • 打赏
  • 举报
回复
引用 5 楼 eisldkw 的回复:
[quote=引用 4 楼 如果有了可惜 的回复:] $.ajax()接收一个 对象做 options,success 是这个对象的属性名,属性值是一个函数。通常来讲我们叫属性值为funciton的属性为这个对象的方法。success 是人家规定的了,不能改变。可以百度 jquery API 中文文档系统看一下。
非常的感谢,请问,这个sucess在本次调用 中是第4个参数,请问它必须放置在第四这个位置吗?[/quote] 和位置无关,但是名字一定要对 这个是json对象 和下面写法是一样的
var obj = {}
obj.type = "post"
//中间省略
obj.success = function(json){
  ....
}
$.ajax(obj)
eisldkw 2019-05-21
  • 打赏
  • 举报
回复
引用 4 楼 如果有了可惜 的回复:
$.ajax()接收一个 对象做 options,success 是这个对象的属性名,属性值是一个函数。通常来讲我们叫属性值为funciton的属性为这个对象的方法。success 是人家规定的了,不能改变。可以百度 jquery API 中文文档系统看一下。


非常的感谢,请问,这个sucess在本次调用 中是第4个参数,请问它必须放置在第四这个位置吗?
如果有了可惜 2019-05-21
  • 打赏
  • 举报
回复
$.ajax()接收一个 对象做 options,success 是这个对象的属性名,属性值是一个函数。通常来讲我们叫属性值为funciton的属性为这个对象的方法。success 是人家规定的了,不能改变。可以百度 jquery API 中文文档系统看一下。
eisldkw 2019-05-21
  • 打赏
  • 举报
回复
引用 2 楼 stherix 的回复:
success是一个变量, 它的值就是后面那个function{}
就像上面的type是一个变量 ,它的值就是后面的字符串 "post"


非常非常的感谢。

请问,这个success这个参数的名称必须是success,还是说可以不是success这个名称,只要是function (json) {
$.messager.progress('close');//记得关闭
if (json.result) {
$('#QRCode1').qrcode(json.str); //生成二维码
}
else {
$('#QRCode1').html("二维码生成失败");
}
}
这个函数放在第4个参数的位置就可以,不管这个函数标的是success 或 是 tom 等等变量名都可以正常使用?
再一次感谢。
stherix 2019-05-21
  • 打赏
  • 举报
回复
success是一个变量, 它的值就是后面那个function{} 就像上面的type是一个变量 ,它的值就是后面的字符串 "post"
eisldkw 2019-05-21
  • 打赏
  • 举报
回复
大师们,快救救我吧

87,993

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧