1. 程式人生 > >關於jQuery.click()函數

關於jQuery.click()函數

解綁 處的 熱插拔 應該 線程 sta 希望 json eve

最近接手了前同事的項目,關於使用線程控制實現代碼熱插拔功能!

在線程中,使用了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()函數