js GridView 实现自动计算操作代码


Posted in Javascript onMarch 25, 2009

注意下面的代码,需要加载jquery所以请大家自行到官方网站下载最新版本。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" > 
<head> 
<title>js操作GridView,实现自动计算</title> 
<style type="text/css"><!-- 
table,tr,td{text-align:center;} 
input{width:50px;text-align:center;} --></style><style type="text/css" bogus="1"> table,tr,td{text-align:center;} 
input{width:50px;text-align:center;} 
</style> 
<script type="text/javascript" src="http://img.3water.com/jslib/jquery/jquery-1.2.6.pack.js"></script> 
<script type="text/javascript"><!-- 
//全局 
var tbl; 
//改变总金额与总数量 
function setTotal(){ 
var totalAmount=0;//总金额 
var totalCount=0;//总数量 
if(tbl!=null&&tbl.rows.length>2)//表头占一行 
{ 
for(var n=1;n<tbl.rows.length-1;n++)//rows数组是从0开始,表足占一行 
{ 
//总数量 
if(!isNaN(tbl.rows[n].cells[2].childNodes[0].value)) 
{ 
totalCount+=Number(tbl.rows[n].cells[2].childNodes[0].value); 
} 
//总金额 
if(!isNaN(tbl.rows[n].cells[3].innerText))//判断是不是数字 
{ 
totalAmount+=Number(tbl.rows[n].cells[3].innerText); 
} 
} 
} 
tbl.rows[tbl.rows.length-1].cells[2].innerText=totalCount; 
tbl.rows[tbl.rows.length-1].cells[3].innerText=totalAmount; 
} 
//单价改变,根据行号找到同一行的数量与金额, 
//这些值可以用index='<%#Container.DataItemIndex %>'绑定 
function fPrice(rowId,val){ 
tbl.rows[Number(rowId)].cells[3].innerText= 
Number(val)* Number(tbl.rows[Number(rowId)].cells[2].childNodes[0].value); 
} 
//数量改变 
function fCount(rowId,val){ 
tbl.rows[Number(rowId)].cells[3].innerText= 
Number(val)* Number(tbl.rows[Number(rowId)].cells[1].childNodes[0].value); 
} 
//限制只能输入数字 
function checknum() 
{ 
if((event.keyCode>=48&&event.keyCode<=57)||event.keyCode==8||(event.keyCode>=96&&event.keyCode<=105) 
||event.keyCode==46||event.keyCode==37||event.keyCode==39||event.keyCode==190||event.keyCode==110) 
{ 
event.returnValue=true; 
} 
else 
{ 
event.returnValue=false; 
} 
} 
jQuery(function(){ 
//初始化table 
//tbl=document.getElementById("GridView1"); 
tbl=$("#GridView1").get(0);//返回DOM对象 
//对input键盘限制 
jQuery("input").keydown(function(){ 
checknum(); 
}).keyup(function(){ 
setTotal(); 
}); 
}); 
// --></script> 
</head> 
<body> 
<table id="GridView1" border="1"> 
<tr> 
<td>编号</td> 
<td>单价</td> 
<td>数量</td> 
<td>金额</td> 
</tr> 
<tr> 
<td>1</td> 
<td><input type="text" onkeyup="fPrice(1,this.value);" /></td> 
<td><input type="text" onkeyup="fCount(1,this.value);" /></td> 
<td></td> 
</tr> 
<tr> 
<td>2</td> 
<td><input type="text" onkeyup="fPrice(2,this.value);" /></td> 
<td><input type="text" onkeyup="fCount(2,this.value);"/></td> 
<td></td> 
</tr> 
<tr> 
<td>合计</td> 
<td></td> 
<td></td> 
<td></td> 
</tr> 
</table> 
</body> 
</html>
Javascript 相关文章推荐
JS面向对象编程 for Cookie
Sep 19 Javascript
Jquery知识点一 Jquery的ready和Dom的onload的区别
Jan 15 Javascript
获取服务器传来的数据 用JS去空格的正则表达式
Mar 26 Javascript
Jquery中LigerUi的弹出编辑框(实现方法)
Jul 09 Javascript
jQuery向上遍历DOM树之parents(),parent(),closest()之间的区别
Dec 02 Javascript
window.location.href IE下跳转失效的解决方法
Mar 27 Javascript
node.js中的fs.chownSync方法使用说明
Dec 16 Javascript
JS打字效果的动态菜单代码分享
Aug 21 Javascript
js实现浮动在网页右侧的简洁QQ在线客服代码
Sep 04 Javascript
如何解决谷歌浏览器下jquery无法获取图片的尺寸
Sep 10 Javascript
BootStrap实现手机端轮播图左右滑动事件
Oct 13 Javascript
Bootstrap实现渐变顶部固定自适应导航栏
Aug 27 Javascript
JAVASCRIPT  THIS详解 面向对象
Mar 25 #Javascript
javascript 打印页面代码
Mar 24 #Javascript
jQuery 全选效果实现代码
Mar 23 #Javascript
利用javascript移动div层-javascript 拖动层
Mar 22 #Javascript
javascript 对象定义方法 简单易学
Mar 22 #Javascript
JS array 数组详解
Mar 22 #Javascript
javascript multibox 全选
Mar 22 #Javascript
You might like
索尼SONY ICF-7600A(W)电路分析
2021/03/01 无线电
东芝TOSHIBA RP-F11电路分析
2021/03/02 无线电
社区(php&amp;&amp;mysql)一
2006/10/09 PHP
非常不错的MySQL优化的8条经验
2008/03/24 PHP
一步一步学习PHP(1) php开发环境配置
2010/02/15 PHP
跟我学Laravel之请求与输入
2014/10/15 PHP
PHP基于openssl实现的非对称加密操作示例
2019/01/11 PHP
php-fpm重启导致的程序执行中断问题详解
2019/04/29 PHP
Extjs Ajax 乱码问题解决方案
2009/04/15 Javascript
Mootools 1.2 手风琴(Accordion)教程
2009/09/15 Javascript
jQuery Flash/MP3/Video多媒体插件
2010/01/18 Javascript
Js 时间函数getYear()的使用问题探讨
2013/04/01 Javascript
JS截取字符串常用方法详细整理
2013/10/28 Javascript
jquery简单实现外部链接用新窗口打开的方法
2015/05/30 Javascript
javaScript事件学习小结(四)event的公共成员(属性和方法)
2016/06/09 Javascript
js实现模糊匹配功能
2017/02/15 Javascript
js仿淘宝商品放大预览功能
2017/03/15 Javascript
jQuery动态产生select option下拉列表
2017/03/15 Javascript
简述Angular 5 快速入门
2017/11/04 Javascript
关于Google发布的JavaScript代码规范你要知道哪些
2018/04/04 Javascript
vue实现百度语音合成的实例讲解
2019/10/14 Javascript
Vue.js watch监视属性知识点总结
2019/11/11 Javascript
微信小程序实用代码段(收藏版)
2019/12/17 Javascript
[56:42]完美世界DOTA2联赛循环赛 Matador vs Forest 第二场 11.06
2020/11/06 DOTA
python通过apply使用元祖和列表调用函数实例
2015/05/26 Python
python脚本实现xls(xlsx)转成csv
2016/04/10 Python
Python实现将Excel转换成为image的方法
2018/10/23 Python
python语言线程标准库threading.local解读总结
2019/11/10 Python
css3背景图片透明叠加属性cross-fade简介及用法实例
2013/01/08 HTML / CSS
html5实现的便签特效(实战分享)
2013/11/29 HTML / CSS
应届生会计求职信
2013/11/11 职场文书
学校食堂食品安全责任书
2014/07/28 职场文书
三好学生竞选稿范文
2019/08/21 职场文书
《围炉夜话》110句人生箴言,精辟有内涵,引人深思
2019/10/23 职场文书
python小程序之飘落的银杏
2021/04/17 Python
Python绘制散乱的点构成的图的方法
2022/04/21 Python