成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

jQuery實現表格數據的動態添加與統計

開發 前端
使用jQuery可以大大減輕工作量,在實際開發中,使用了jQuery的clone(true)函數,該函數可以創建一個jQury對象的副本,并且參數為true時,可以復制該元素的所有事件處理函數。

 

某物流信息系統中的功能要求如圖1.1所示,表格中每一行代表一筆運送貨物的信息,在錄入每行的計費重量和費率后,要求能按一定的公式,自動計算運送費用,并且能自動統計所有運送貨物的總運費。運送貨物信息的數據量(即表格的行數)不定,要求能動態增加、刪除,即表格的數據行數是動態可維護的。同時為了方便操作,需要在頁面中能像使用鍵盤的上下左右方向鍵,在錄入的文本框之間進行切換。每行的數據有一定的校驗要求,比如單號必須為8位數字,件數和重量必須為數字...

jQuery

單行貨物信息計算運費不難實現,只需要在計費重量和費率的文本框對象的onblur事件中,得到費率和計費重量,按照公式計算好運費即可。

總計費用的統計也不難實現,遍歷整個表格的所有費用對象,統計其和,將計算結果放到總計的文本框對象即可。

難點在動態添加整行表格數據,而且每行數據上的各文本框對象的事件也要實現自動統計和運算,有相當的難度。如果使用JavaScript需要調用Dom對象創建一個單元格,還需要在tr里面添加10多個單元格對象,每個單元格對象內要添加文本框對象,還需要在文本框對象上響應onblur事件進行運費計算,代碼量相當大。

使用jQuery可以大大減輕工作量,在實際開發中,使用了jQuery的clone(true)函數,該函數可以創建一個jQury對象的副本,并且參數為true時,可以復制該元素的所有事件處理函數。

我們可以在***行中實現計算運費的運算。然后點增加明細按鈕時,調用jQuery 的clone(true)函數,建立***行的副本對象插入到表格下方,由于使用clone(true)可以復制對象的事件處理函數,所以每行中文本框的onblur事件和運費計算函數也被成功復制,不需再做處理。大大減輕了工作量。

關鍵代碼

(一)創建克隆單元格對象并添加到表格中

  1. var v=$("#tbin");//得到表格的jquery對象   
  2. //所有的數據行有一個.MyRow的Class,得到數據行的大小  
  3. var vcount=$("#tbin tr").filter(".MyRow").size()+1;  
  4. //表格有多少個數據行    
  5. var vTr=$("#tbin #trDataRow1");  
  6.  //得到表格中的***行數據      
  7. var vTrClone=vTr.clone(true);//創建***行的副本對象vTrClone  
  8. vTrClone.appendTo(v);//把副本單元格對象添加到表格下方 

(二)統計更新總金額

  1. function UpdateTotal()//更新總金額  
  2.       {  
  3.         var vTotalMoney=0;//總金額的初始值為0;              
  4.         var vTable=$("#tbin");//得到表格的jquery對象      
  5.          var vTotal= vTable.find("#txtTotal") ;//得到總金額對象  
  6.          var vtxtAfters=vTable.find("#txtMoney");//得到所有計算好的費用對象;  
  7.         vtxtAfters.each(   //使用jQuery的each函數遍歷每行費用對象,累加成總金額  
  8.             function(i)  
  9.             {  
  10.             var vTempValue=$(this).val();  
  11.                 if(vTempValue=="")  
  12.                 {  
  13.                     vTempValue=0;  
  14.                 }  
  15.             vTotalMoney=vTotalMoney+parseFloat(vTempValue);//計算總費用  
  16.             }  
  17.         )//遍歷結束  
  18.          vTotal.val(vTotalMoney); //將總費用顯示到對應文本框對象中  
  19.       }     

(三)計費重量變化時計算費用,并統計總費用

  1.  $("#txtMoneyWeight").bind("change"function()  
  2.         {  
  3.         var vTotalMoney=0;//總金額的初始值為0;     
  4.         var vtxtDetail=$(this);//得到變化的文本框對象       
  5.          var vVal=vtxtDetail.val();              
  6. var vtxtAfter=vtxtDetail.parent("td").parent("tr").find("#txtRate");  
  7.         //得到費率;  
  8. var vtxtMoney=vtxtDetail.parent("td").parent("tr").find("#txtMoney");  
  9. //得到費用;     
  10.  var vMoney=CalculatorMoney(vVal,vtxtAfter.val());  
  11. //使用公式計算單行運費   
  12.  vtxtMoney.val(vMoney);   
  13. //顯示單行運費信息         
  14. UpdateTotal();   //調用函數統計更新總費用  
  15.   }); //變化腳本結束 

鍵盤的控制和數據的校驗在源程序中有詳細注釋,具體代碼可參考源程序。

原文鏈接:http://www.cnblogs.com/l_dragon/archive/2011/01/26/1945020.html

【編輯推薦】

  1. 使用 jQuery 簡化 Ajax 開發
  2. jQuery1.5新特征之插件機制的救贖
  3. 精益求精 jQuery代碼的分析與優化
  4. jQuery1.5的六大細節改進:DOM操作更簡單
  5. jQuery入門:數組的三種類型三種操作
責任編輯:陳貽新 來源: 生如夏花的博客
相關推薦

2012-05-29 15:22:03

JACOBJava

2011-10-28 14:01:30

jQuery

2009-08-18 17:50:37

ASP.NET MVC

2011-10-25 09:52:56

jQuery

2024-09-23 21:00:57

C#反射

2011-05-11 15:10:21

jQueryCSS導航欄

2011-02-21 12:52:00

JavaScript

2009-03-23 09:01:00

圖片存儲數據庫JSP

2024-06-26 08:00:00

2013-05-31 09:36:13

Jquery3D效果

2023-09-12 09:43:33

JavaMySQL

2024-11-15 10:39:11

2009-12-17 09:56:26

Linux添加驅動模塊

2009-08-19 11:07:41

2023-12-08 07:55:37

MySQL數據統計InnoDB

2025-02-27 00:32:35

2019-09-10 13:58:57

動態路由路由器網絡

2022-06-15 16:35:02

配置共享Nacos

2012-10-31 11:21:30

網站統計數據收集開發

2022-11-15 09:57:51

Java接口
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成人在线小视频 | 中文字幕一区二区三区乱码图片 | 精品一二区 | 欧美一区二区三区视频在线播放 | 日本精品999 | 日韩欧美精品一区 | 精品国产91乱码一区二区三区 | 久久久男人的天堂 | 午夜精品在线 | 日韩高清一区 | 久久91精品国产 | 日韩精品一区二区三区在线观看 | 国产日韩欧美中文 | 久久久女女女女999久久 | 亚洲三区在线播放 | 午夜电影福利 | 高清一区二区三区 | 一区二区三区四区电影视频在线观看 | 日本淫视频| 欧美性猛交 | 91色视频在线观看 | 成人在线免费视频观看 | 久久精品国产99国产 | 亚洲视频免费 | 久久国产精品亚洲 | 韩日在线视频 | 久久精品久久综合 | 久综合| 97视频在线免费 | 欧美精品在线免费 | 欧美在线视频一区二区 | 久久国产精品免费视频 | 国产精品69毛片高清亚洲 | 国产精品久久久久久久一区探花 | 国产激情偷乱视频一区二区三区 | 拍真实国产伦偷精品 | 国产精品成人国产乱一区 | 久久婷婷国产麻豆91 | 自拍偷拍第一页 | 精品综合 | 黄色播放 |