jQuery動態行綁定事件,發生重復綁定解決方案
背景:
系統需要動態增加分類,各分類下有各自的3項資金(有資金小計,問題就出在這裏)。
問題:
新增一條分類,需要給3項資金新綁定小計功能。這個時候會發現,初始第一行的計算,會調用兩次,增加到三行的時候,第一行會重復計算三次,第二行會重復計算兩次...以此類推
為什麽會執行多次?
猜詞:
新增一行,綁定計算函數,歷史分類會累計事件。也就是說,每新增一行,歷史的每一個分類都會增加一次事件綁定。
方案:
綁定事件前,刪除事件。jQuery提供了on()、live()綁定方法,對應的解綁事件off()、die().
編碼:
// 調整之後的事件綁定 $(this).off(‘blur‘).on(‘blur‘,function(){ alert(‘綁定前,解綁。保證事件唯一性‘); }); /** 老的事件綁定 $(this).on(‘blur‘,function(){ alert(‘直接綁定,遇到重復調用,會出現事件多次執行的異常,請確認只綁定一次。‘); });*/
以上,就是jQuery事件綁定,出現重復多次執行問題的來龍去脈,謝謝大家。
----by.沫沫金
jQuery動態行綁定事件,發生重復綁定解決方案
相關推薦
jQuery動態行綁定事件,發生重復綁定解決方案
jquery 事件綁定 重復執行 多次執行背景:系統需要動態增加分類,各分類下有各自的3項資金(有資金小計,問題就出在這裏)。問題:新增一條分類,需要給3項資金新綁定小計功能。這個時候會發現,初始第一行的計算,會調用兩次,增加到三行的時候,第一行會重復計算三次,第二行會重復計算兩次...以此類推為什麽會執行多
jquery遍歷下標,傳入事件,防止重復執行事件
文化 美的 大米 東北 雲南 img 層次 query 平時 let thisdata = [{"imgUrl":"../img/index/eastnorth.jpg","title": "東北","content":"東北菜源於魯菜,又融合了多個少數民族的特色風格,肉菜
動態sql 的增刪改,快取沒辦法自動重新整理,解決方案
MemcachedCache(mappedStatement.getId().substring(0,mappedStatement.getId().lastIndexOf("."))); memcachedCache.clear();
以申購單為例項,講解Jquery動態刪減行,新增行新增滑鼠事件,子視窗與父視窗傳值,自動計算金額,及輸入值的驗證,前臺資料批量提交到後臺action
最近在為公司做一個小型ERP,其中有一個申購模組,公司需求大概:新建申購單,新建時新增要申購的物料資訊。輸入每樣物料的申購數量,預計價格,前臺自動計算總價。 設計需求大概:申購單應可以動態增減物料資訊。每條物料資訊應驗證不可重複。大概就是這些。本人剛剛畢業,參考網上資料後,
jQuery動態創建的dom對象不能綁定事件的解決方法
但是 this jquer jquery live() tor 解決方法 dom 事件處理 參照網上前輩: 方法一:綁定live事件 live(type,[data],fn) $(selector).live("click",function(){ alert("
react如何優雅的綁定事件,並且可以優雅的傳參
每次 需要 bin 不為 事件 func 很好 麻煩 tor react函數調用以及傳參。 一。先寫不傳參數的情況 1、es5寫法 click(){ dosomething..... } 調用:onClick={this.click.bind(this)} 每次調用
jQuery基礎(鼠標事件,表單事件,鍵盤事件,自定義事件 篇)
1.7 傳遞 ret 文本 leave 右鍵 page content gree 1.jQuery鼠標事件之click與dbclick事件 方法一:$ele.click()(不帶參數) <div id="test">點擊觸發<div> $(
事件委托導致重復綁定多次事件
綁定 方法 click font page 接口 In ret btn 最近在制作分頁的時候使用事件綁定,導致ajax訪問接口成倍的增加,找了好久發現是由於多次事件綁定引起的。 //分頁功能 Sea("page").on("click",".page-btn",f
JQuery - 動態添加Html後,如何使CSS生效,JS代碼可用?
+= ref 但是 希望 今天 .net view 函數代碼 點擊 今天在開發JQuery Mobile程序時候,需要從服務器取得數據,隨後顯示在頁面上的Listview控件中,數據完整獲取到了,也動態添加到Listview控件中,但是數據對應的CSS沒有任何效果了,而且操
開發過程中用Zepto/jquery給未來元素新增事件,live()無法使用解決方法
通過 live() 方法附加的事件處理程式適用於匹配選擇器的當前及未來的元素(比如由指令碼建立的新元素)。 live() 方法為被選元素附加一個或多個事件處理程式,並規定當這些事件發生時執行的函式。 $("button").live("click",function(){ $
jquery動態新增繫結事件
jquery動態新增繫結事件 場景:在使用jquery的方式為元素繫結事件時,我經常使用bind或者click,但這隻能為頁面已經載入好的元素繫結事件。像需要用ajax的方式請求遠端資料來動態新增頁面元素時,顯然以上幾種繫結事件的方式是無效的。 解決方案: 1.7之後也就是1.8開始,就
jquery或者js彈窗事件,頁面返回時觸發的事件
頁面返回時觸發的事件!! 安卓或者ios返回上一頁時觸發的事件!! 因為此方法在開發中使用的是mui前端外掛,可以更改為jquery或者js, 更改這裡即可[email protected]上面 <script> $(functio
關於jquery中 的點選事件,每點一次執行的效果就疊加一次,click是新增點選事件的意思
我本人還是前端的菜鳥,所以一般在寫特效的時候,喜歡用jquery,但是在用jquery的點選事件中,點選後改變容器中的內容,但是發現每點一次就顯示一個內容,點幾次就有幾個。jquery中 的點選事件,每點一次執行的效果就疊加一次,click是新增點選事件的意思。那麼來解決這
EXT.NET-gridpanel 行雙擊事件,js帶引數呼叫後臺方法
1、js程式碼,寫在body裡面 [javascript]view plaincopy <script language="javascript" type="text/javascript"> function rowDbC
jquery 動態新增元素的事件
開發專案時候選擇框DropDownList的Change事件,有時候需要多級級聯從而動態生成Select元素,但是此時的Select元素的Change事件無法觸發,非常苦悶。在專案中採用了兩種方式,一種是重新聲稱元素的時候,把事件寫入到partial的view中,但是這種
用js或者jquery動態給div追加內容,不覆蓋之前的內容
效果:js<div id="append">ss</div> <script> var divA = document.getElementById("append"
jquery easyui combobox失去焦點事件,datetimebox失去焦點事件
$('#a').datetimebox('textbox').bind('blur', function(e) { if(null == $('#a').datetimebox('getValue'
table表的tr行點選事件,獲取對應的table表的第一列的值
$("#table_id tbody").on("click","tr",function() {var td = $(this).find("td");var data = td.eq(0).text();});
VC運行庫版本不同導致鏈接.LIB靜態庫時發生重復定義問題的一個案例分析和總結
修改 borde 並且 release 鏈接 部分 sdn 托管代碼 兩個 MSDN中對於在不同的配置下Link的LIB作了說明: C Runtime Library: 開關 對應的庫 版本 /MD
關於QT信號和槽機制的重復綁定錯誤及改正
之前 位置 對象 綁定 會銷 改變 設計 界面 再次 之前做過一個作業,是編寫五子棋、圍棋遊戲,因為需要界面,所以選擇了QT框架。Qt 的核心機制之一是信號與槽,主要用來進行兩個對象之間的通信。當一個對象狀態改變時,可以發出一個信號,另一個對象則執行與這個信號綁定的槽函