Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Jquery回调函数每次调用都返回一次_Javascript_Jquery_Jquery Callback - Fatal编程技术网

Javascript Jquery回调函数每次调用都返回一次

Javascript Jquery回调函数每次调用都返回一次,javascript,jquery,jquery-callback,Javascript,Jquery,Jquery Callback,当用户单击“自定义”链接时,我调用一个函数打开一个对话框。当用户单击“保存”按钮时,该函数有一个回调。此回调返回一个obj。 我的问题是当你点击“定制”1次时,你会得到一次,2次,2次,3次,3次返回的obj。。。不断地 I每次用户单击“自定义”后只返回一次的回调是什么 vars(child\u id,this\u box)每次单击只实例化一次,但是自定义\u box让obj返回计数(单击次数)2,3,4,n.的次数与单击自定义\u链接的次数相同 如何在每次单击box\u customize\u

当用户单击“自定义”链接时,我调用一个函数打开一个对话框。当用户单击“保存”按钮时,该函数有一个回调。此回调返回一个obj。 我的问题是当你点击“定制”1次时,你会得到一次,2次,2次,3次,3次返回的obj。。。不断地

I每次用户单击“自定义”后只返回一次的回调是什么

vars
(child\u id,this\u box)
每次单击只实例化一次,但是
自定义\u box
让obj返回
计数(单击次数)2,3,4,n.
的次数与单击
自定义\u链接的次数相同


如何在每次单击
box\u customize\u link
时仅获取一次obj?

每次单击
$(“#save\u box\u button')
时,都会附加
$(“#customize\u link”)
上的单击处理程序

而不是
$(“#保存框_按钮”)。单击(函数(){
您应该使用

$('#save_box_button').one("click", function() { ...
这样,单击处理程序只附加一次

第二个选项是在重新连接之前删除可能存在的单击处理程序:

$('#save_box_button').off("click.savehandler").on("click.savehandler", function() { ...
请注意域“savehandler”。它防止其他单击事件被
off
-方法分离,我认为使用此方法是一个很好的实践

$('#save_box_button').off("click.savehandler").on("click.savehandler", function() { ...