关于jQuery.click()函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于jQuery.click()函数相关的知识,希望对你有一定的参考价值。

最近接手了前同事的项目,关于使用线程控制实现代码热插拔功能!

在线程中,使用了ChatWebSocketHandler,与前台进行实时交互,今天我拿到需求是这样的,结合chatWebSocketHandler传递到页面的标识,将每一条执行之后的数据状态改写为执行成功! 前台使用$("#"+dataJson.Id).children(".state").text("成功"); 那么此处的Id是后台传来的,那么我想到的是通过Id再去后台修改状态!  我是这样实现的

websocket.onmessage = function(event) {
   var data = event.data;
   var dataJson = eval(‘(‘ + data + ‘)‘);

if(Id == 1){

$("#updateState").click(dataJson.Id,function(event){$.ajax({ update... })})
$("#updateState").click();

$(‘#updateState‘).unbind("click"); //移除click

}

}
那么此时问题来了,当执行第一条数据时,update发送了一次请求,而第二条发送,第一个和第二个Id,后面以此类推,于是我就开始尝试到底是什么问题,当然最终我还是没试出来,希望了解的朋友可以帮我解惑!  我的解决方式是当click执行之后,给他解绑,此时实现了我的需求! 由此我个人猜测,应该是click在每次加载页面的时候会执行,但是具体原因还是没找到!   如果以后找到原因,我会及时补充

 

以上是关于关于jQuery.click()函数的主要内容,如果未能解决你的问题,请参考以下文章

jQuery click(false) 结合一个函数

如何向 jQuery click 函数发送多个参数?

jquery click函数声明在运行时评估变量

jquery click函数不适用于每个输入字段

指定在我的 Jquery .click 函数中使用哪个“this”

在 jquery click() 之后调用定义的函数不起作用