javascript多表计算并鼠标触发合计值,多表调用同一个function方法
来源:互联网 发布:淘宝网买东西找人付款 编辑:程序博客网 时间:2024/05/16 04:59
表的样子是这样的,这只是其中一个表,还有几个类似于这样的表,我们都需要算合计值,并且鼠标点击就会出现总合计,允许空值,这就需要用到一个总function方法,因为每个表都有不同的行数和列数,所以我们在计算过程中需要从第一行计算到每个表的最后一行,所以在function中设置:tableid(表的id),beginRow(初始行数),endRow(最后的行数),ncolumn(列),
<script>// 城市竞争状况 合计 ; function tableTotal(thetable,beginRow,endRow,nColumn){ var table = document.getElementById(thetable); var totalRows = table.rows.length -1; var firstColumn = 0; var cc = nColumn-1 ; for ( var i = beginRow-2; i < endRow-1; ++ i ) { var trr1 = table.getElementsByTagName("tr")[i+1] ; var tdd1 = trr1.getElementsByTagName("td")[cc] var bbb = tdd1.getElementsByTagName("div")[0].id var value = document.getElementById(bbb).innerHTML; //文字不予计算 if(!isNaN(value)){ firstColumn += Number(value); } } table.rows[totalRows].cells[cc].innerHTML = firstColumn; }</script>
我还不会前端,所以就很蒙,这个做了两天,好尴尬
这个表的源码在下面:
<p><strong>城市竞争状况</strong></p> <table width="1028" border="0" cellpadding="0" cellspacing="0" class='table_big' id="tablelist14"> <tr> <td width="106" height="28" class="datalist_title" scope="col" onmouseover="this.style.backgroundColor='#5EA7B9'" onmouseout="this.style.backgroundColor='#E7E7E7'">主要竞争品牌</td> <td width="106" class="datalist_title" scope="col" onmouseover="this.style.backgroundColor='#5EA7B9'" onmouseout="this.style.backgroundColor='#E7E7E7'">2015销售量(KL)</td> <td width="106" class="datalist_title" scope="col" onmouseover="this.style.backgroundColor='#5EA7B9'" onmouseout="this.style.backgroundColor='#E7E7E7'">市场份额(%)</td> <td width="200" class="datalist_title" scope="col" onmouseover="this.style.backgroundColor='#5EA7B9'" onmouseout="this.style.backgroundColor='#E7E7E7'">2014到2015的增长率(%)</td> <td width="191" class="datalist_title" scope="col" onmouseover="this.style.backgroundColor='#5EA7B9'" onmouseout="this.style.backgroundColor='#E7E7E7'">该公司专职销售人员数量</td> <td width="170" class="datalist_title" scope="col" onmouseover="this.style.backgroundColor='#5EA7B9'" onmouseout="this.style.backgroundColor='#E7E7E7'">经销商专职销售人员数量</td> <td width="147" class="datalist_title" scope="col" onmouseover="this.style.backgroundColor='#5EA7B9'" onmouseout="this.style.backgroundColor='#E7E7E7'">该城市经销商数量</td> </tr> <tr> <td class="data">美孚</td> <td class="data"><div id="A3_E51" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','2')"></div></td> <td class="data"><div id="A3_F51" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','3')"></div></td> <td class="data"><div id="A3_G51" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','4')"></div></td> <td class="data"><div id="A3_H51" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','5')"></div></td> <td class="data"><div id="A3_I51" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','6')"></div></td> <td class="data"><div id="A3_J51" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','7')"></div></td> </tr> <tr> <td height="21" class="data">道达尔</td> <td class="data"><div id="A3_E52" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','2')"></div></td> <td class="data"><div id="A3_F52" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','3')"></div></td> <td class="data"><div id="A3_G52" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','4')"></div></td> <td class="data"><div id="A3_H52" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','5')"></div></td> <td class="data"><div id="A3_I52" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','6')"></div></td> <td class="data"><div id="A3_J52" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','7')"></div></td> </tr> <tr> <td height="21" class="data">BP/嘉实多</td> <td class="data"><div id="A3_E53" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','2')"></div></td> <td class="data"><div id="A3_F53" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','3')"></div></td> <td class="data"><div id="A3_G53" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','4')"></div></td> <td class="data"><div id="A3_H53" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','5')"></div></td> <td class="data"><div id="A3_I53" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','6')"></div></td> <td class="data"><div id="A3_J53" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','7')"></div></td> </tr> <tr> <td height="21" class="data">长城</td> <td class="data"><div id="A3_E54" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','2')"></div></td> <td class="data"><div id="A3_F54" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','3')"></div></td> <td class="data"><div id="A3_G54" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','4')"></div></td> <td class="data"><div id="A3_H54" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','5')"></div></td> <td class="data"><div id="A3_I54" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','6')"></div></td> <td class="data"><div id="A3_J54" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','7')"></div></td> </tr> <tr> <td height="21" class="data">昆仑</td> <td class="data"><div id="A3_E55" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','2')"></div></td> <td class="data"><div id="A3_F55" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','3')"></div></td> <td class="data"><div id="A3_G55" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','4')"></div></td> <td class="data"><div id="A3_H55" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','5')"></div></td> <td class="data"><div id="A3_I55" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','6')"></div></td> <td class="data"><div id="A3_J55" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','7')"></div></td> </tr> <tr> <td height="21" class="data">统一</td> <td class="data"><div id="A3_E56" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','2')"></div></td> <td class="data"><div id="A3_F56" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','3')"></div></td> <td class="data"><div id="A3_G56" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','4')"></div></td> <td class="data"><div id="A3_H56" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','5')"></div></td> <td class="data"><div id="A3_I56" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','6')"></div></td> <td class="data"><div id="A3_J56" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','7')"></div></td> </tr> <tr> <td height="21" class="data">其他合计</td> <td class="data"><div id="A3_E57" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','2')"></div></td> <td class="data"><div id="A3_F57" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','3')"></div></td> <td class="data"><div id="A3_G57" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','4')"></div></td> <td class="data"><div id="A3_H57" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','5')"></div></td> <td class="data"><div id="A3_I57" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','6')"></div></td> <td class="data"><div id="A3_J57" class="test_box" contenteditable="true" onblur="tableTotal('tablelist14','2','8','7')"></div></td> </tr> <tr> <td height="21" class="data">总计</td> <td class="data"><div id="A3_E58" class="test_box" contenteditable="false"></div></td> <td class="data"><div id="A3_F58" class="test_box" contenteditable="false"></div></td> <td class="data"><div id="A3_G58" class="test_box" contenteditable="false"></div></td> <td class="data"><div id="A3_H58" class="test_box" contenteditable="false"></div></td> <td class="data"><div id="A3_I58" class="test_box" contenteditable="false"></div></td> <td class="data"><div id="A3_J58" class="test_box" contenteditable="false"></div></td> </tr> </table>
那么相应的td中div就加上onblur
表的id,由于第一行是表头,所以 初始行为2,结束行为8。列数同样第一列为表头,所以从第二列开始。
还有些小细节没有改,比如输入空格或者回车就错误啦~,这个就要再写一些方法去限制我们输入的东西
这样我们有再都的计算列表都可以调用这个方法,
阅读全文
2 0
- javascript多表计算并鼠标触发合计值,多表调用同一个function方法
- 多个按钮调用同一个方法
- 多个输入框合计计算
- 多个div对应同一个点击事件时,确定触发点击事件的div的方法
- 多表合计查询 with 写法
- 多个线程调用同一个线程函数的方法
- 多个脚本调用同一个函数的方法
- 在同一个类中调用另一个方法没有触发 Spring AOP 的问题
- 在同一个类中调用另一个方法没有触发 Spring AOP 的问题【转】
- javascript 鼠标 触发此事件
- 多表查询-行列转换-合计SQL语句
- 在JavaScript的Array数组中调用一组Function方法
- 多个线程调用同一个线程函数
- javascript - 鼠标/键盘等事件的触发
- JavaScript中鼠标事件触发顺序探索
- cxgrid按条件计算合计值
- 单表费用合计
- java中,多个线程同时调用同一个静态方法的问题
- Spring AOP增强小例子
- JavaScript分时函数
- 文章标题
- HashMap遍历的两种方式,推荐使用entrySet()
- JS中this的作用域问题
- javascript多表计算并鼠标触发合计值,多表调用同一个function方法
- 创建游标
- node.js的安装教程
- 1044: 不及格率
- node.js调用Java接口连接hive
- 7月28日云栖精选夜读:【上报纸啦】95后大学生用机器学习PAI大战老年痴呆
- 基于MQTT实现推送
- ios-矩阵旋转缩放平移操作
- Visual Studio2013常用快捷键大全