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导出格式化的excel 实例方法
Jul 17 Javascript
js unicode 编码解析关于数据转换为中文的两种方法
Apr 21 Javascript
jquery实现文本框数量加减功能的例子分享
May 10 Javascript
JS解析XML文件和XML字符串详解
Apr 17 Javascript
如何解决谷歌浏览器下jquery无法获取图片的尺寸
Sep 10 Javascript
WEB前端实现裁剪上传图片功能
Oct 17 Javascript
js学习总结_基于数据类型检测的四种方式(必看)
Jul 04 Javascript
基于 Vue 的树形选择组件的示例代码
Aug 18 Javascript
Vue批量图片显示时遇到的路径被解析问题
Mar 28 Javascript
layui中select,radio设置不生效的解决方法
Sep 05 Javascript
JavaScript运动原理基础知识详解
Apr 02 Javascript
如何在postman中添加cookie信息步骤解析
Jun 30 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
利用PHP动态生成VRML网页
2006/10/09 PHP
CodeIgniter模板引擎使用实例
2014/07/15 PHP
php中实现xml与mysql数据相互转换的方法
2014/12/25 PHP
Ubuntu中启用php的mail()函数并解决发送邮件速度慢问题
2015/03/27 PHP
PHP实现redis限制单ip、单用户的访问次数功能示例
2018/06/16 PHP
怎么用javascript进行拖拽
2006/07/20 Javascript
增强的 JavaScript 的 trim 函数的代码
2007/08/13 Javascript
input、button的不同type值在ajax提交表单时导致的陷阱
2009/02/24 Javascript
JavaScript知识点总结之如何提高性能
2016/01/15 Javascript
Bootstrap模态对话框的简单使用
2016/04/29 Javascript
js将滚动条滚动到指定位置的简单实现方法
2016/06/25 Javascript
JSON 数据格式详解
2017/09/13 Javascript
详解如何用webpack4从零开始构建react开发环境
2019/01/27 Javascript
在element-ui的select下拉框加上滚动加载
2019/04/18 Javascript
浅谈ECMAScript 中的Array类型
2019/06/10 Javascript
JS把字符串格式的时间转换成几秒前、几分钟前、几小时前、几天前等格式
2019/07/10 Javascript
es6中reduce的基本使用方法
2019/09/10 Javascript
vue中移动端调取本地的复制的文本方式
2020/07/18 Javascript
用Python实现web端用户登录和注册功能的教程
2015/04/30 Python
判断网页编码的方法python版
2016/08/12 Python
Python面向对象进阶学习
2019/05/21 Python
pyqt5与matplotlib的完美结合实例
2019/06/21 Python
Windows下pycharm创建Django 项目(虚拟环境)过程解析
2019/09/16 Python
python 多线程爬取壁纸网站的示例
2021/02/20 Python
CSS3五个技巧给你的网站带来出色的效果
2009/04/02 HTML / CSS
世界领先的艺术图书出版社:TASCHEN
2018/07/23 全球购物
西班牙在线光学:Visual-Click
2020/06/22 全球购物
班组长安全职责
2014/01/05 职场文书
写给老师的表扬信
2014/01/21 职场文书
读书活动实施方案
2014/03/10 职场文书
大学生国家助学金感谢信
2015/01/23 职场文书
工地材料员岗位职责
2015/04/11 职场文书
《走遍天下书为侣》教学反思
2016/02/22 职场文书
看古人们是如何赞美老师的?
2019/07/08 职场文书
matplotlib之pyplot模块实现添加子图subplot的使用
2021/04/25 Python
javascript实现计算器功能详解流程
2021/11/01 Javascript