應(yīng)用jQuery實(shí)現(xiàn)表格數(shù)據(jù)的動(dòng)態(tài)添加與統(tǒng)計(jì)

應(yīng)用jQuery實(shí)現(xiàn)表格數(shù)據(jù)的動(dòng)態(tài)添加與統(tǒng)計(jì)

ID:38788151

大?。?3.00 KB

頁(yè)數(shù):4頁(yè)

時(shí)間:2019-06-19

應(yīng)用jQuery實(shí)現(xiàn)表格數(shù)據(jù)的動(dòng)態(tài)添加與統(tǒng)計(jì)_第1頁(yè)
應(yīng)用jQuery實(shí)現(xiàn)表格數(shù)據(jù)的動(dòng)態(tài)添加與統(tǒng)計(jì)_第2頁(yè)
應(yīng)用jQuery實(shí)現(xiàn)表格數(shù)據(jù)的動(dòng)態(tài)添加與統(tǒng)計(jì)_第3頁(yè)
應(yīng)用jQuery實(shí)現(xiàn)表格數(shù)據(jù)的動(dòng)態(tài)添加與統(tǒng)計(jì)_第4頁(yè)
資源描述:

《應(yīng)用jQuery實(shí)現(xiàn)表格數(shù)據(jù)的動(dòng)態(tài)添加與統(tǒng)計(jì)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。

1、摘要:使用jQuery可以大大減輕工作量,在實(shí)際開(kāi)發(fā)中,使用了jQuery的clone(true)函數(shù),該函數(shù)可以創(chuàng)建一個(gè)jQury對(duì)象的副本,并且參數(shù)為true時(shí),可以復(fù)制該元素的所有事件處理函數(shù)?! ∧澄锪餍畔⑾到y(tǒng)中的功能要求如圖1.1所示,表格中每一行代表一筆運(yùn)送貨物的信息,在錄入每行的計(jì)費(fèi)重量和費(fèi)率后,要求能按一定的公式,自動(dòng)計(jì)算運(yùn)送費(fèi)用,并且能自動(dòng)統(tǒng)計(jì)所有運(yùn)送貨物的總運(yùn)費(fèi)。運(yùn)送貨物信息的數(shù)據(jù)量(即表格的行數(shù))不定,要求能動(dòng)態(tài)增加、刪除,即表格的數(shù)據(jù)行數(shù)是動(dòng)態(tài)可維護(hù)的。同時(shí)為了方便操作,需要在頁(yè)面

2、中能像使用鍵盤(pán)的上下左右方向鍵,在錄入的文本框之間進(jìn)行切換。每行的數(shù)據(jù)有一定的校驗(yàn)要求,比如單號(hào)必須為8位數(shù)字,件數(shù)和重量必須為數(shù)字...  單行貨物信息計(jì)算運(yùn)費(fèi)不難實(shí)現(xiàn),只需要在計(jì)費(fèi)重量和費(fèi)率的文本框?qū)ο蟮膐nblur事件中,得到費(fèi)率和計(jì)費(fèi)重量,按照公式計(jì)算好運(yùn)費(fèi)即可?! 】傆?jì)費(fèi)用的統(tǒng)計(jì)也不難實(shí)現(xiàn),遍歷整個(gè)表格的所有費(fèi)用對(duì)象,統(tǒng)計(jì)其和,將計(jì)算結(jié)果放到總計(jì)的文本框?qū)ο蠹纯?。  難點(diǎn)在動(dòng)態(tài)添加整行表格數(shù)據(jù),而且每行數(shù)據(jù)上的各文本框?qū)ο蟮氖录惨獙?shí)現(xiàn)自動(dòng)統(tǒng)計(jì)和運(yùn)算,有相當(dāng)?shù)碾y度。如果使用JavaScript需

3、要調(diào)用Dom對(duì)象創(chuàng)建一個(gè)單元格,還需要在tr里面添加10多個(gè)單元格對(duì)象,每個(gè)單元格對(duì)象內(nèi)要添加文本框?qū)ο?還需要在文本框?qū)ο笊享憫?yīng)onblur事件進(jìn)行運(yùn)費(fèi)計(jì)算,代碼量相當(dāng)大。  使用jQuery可以大大減輕工作量,在實(shí)際開(kāi)發(fā)中,使用了jQuery的clone(true)函數(shù),該函數(shù)可以創(chuàng)建一個(gè)jQury對(duì)象的副本,并且參數(shù)為true時(shí),可以復(fù)制該元素的所有事件處理函數(shù)?! ∥覀兛梢栽诘谝恍兄袑?shí)現(xiàn)計(jì)算運(yùn)費(fèi)的運(yùn)算。然后點(diǎn)增加明細(xì)按鈕時(shí),調(diào)用jQuery的clone(true)函數(shù),建立第一行的副本對(duì)象插入到表

4、格下方,由于使用clone(true)可以復(fù)制對(duì)象的事件處理函數(shù),所以每行中文本框的onblur事件和運(yùn)費(fèi)計(jì)算函數(shù)也被成功復(fù)制,不需再做處理。大大減輕了工作量。  關(guān)鍵代碼  (一)創(chuàng)建克隆單元格對(duì)象并添加到表格中1.varv=$("#tbin");//得到表格的jquery對(duì)象2.//所有的數(shù)據(jù)行有一個(gè).MyRow的Class,得到數(shù)據(jù)行的大小3.varvcount=$("#tbintr").filter(".MyRow").size()+1;4.//表格有多少個(gè)數(shù)據(jù)行5.varvTr=$("#tbin

5、#trDataRow1");6.//得到表格中的第一行數(shù)據(jù)7.varvTrClone=vTr.clone(true);//創(chuàng)建第一行的副本對(duì)象vTrClone8.vTrClone.appendTo(v);//把副本單元格對(duì)象添加到表格下方  (二)統(tǒng)計(jì)更新總金額1.functionUpdateTotal()//更新總金額2.{3.varvTotalMoney=0;//總金額的初始值為0;4.varvTable=$("#tbin");//得到表格的jquery對(duì)象5.varvTotal=vTable.fin

6、d("#txtTotal");//得到總金額對(duì)象6.varvtxtAfters=vTable.find("#txtMoney");//得到所有計(jì)算好的費(fèi)用對(duì)象;7.vtxtAfters.each(//使用jQuery的each函數(shù)遍歷每行費(fèi)用對(duì)象,累加成總金額8.function(i)9.{10.varvTempValue=$(this).val();11.if(vTempValue=="")12.{13.vTempValue=0;14.}15.vTotalMoney=vTotalMoney+parseF

7、loat(vTempValue);//計(jì)算總費(fèi)用16.}17.)//遍歷結(jié)束18.vTotal.val(vTotalMoney);//將總費(fèi)用顯示到對(duì)應(yīng)文本框?qū)ο笾?9.}  (三)計(jì)費(fèi)重量變化時(shí)計(jì)算費(fèi)用,并統(tǒng)計(jì)總費(fèi)用1.$("#txtMoneyWeight").bind("change",function()2.{3.varvTotalMoney=0;//總金額的初始值為0;4.varvtxtDetail=$(this);//得到變化的文本框?qū)ο?.varvVal=vtxtDetail.val();6.

8、varvtxtAfter=vtxtDetail.parent("td").parent("tr").find("#txtRate");7.//得到費(fèi)率;8.varvtxtMoney=vtxtDetail.parent("td").parent("tr").find("#txtMoney");9.//得到費(fèi)用;10.varvMoney=CalculatorMoney(vVal,vtxtAfter.val());11.//使用公式

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。