在GridView控件内文本框实现TextChanged事件,勾选复选框时 :textbox文本框可编辑,编辑文本框的数字后 总金额会重新计算并统计
2016-05-20 15:37
330 查看
关于gridview中勾选复选框 并激发文本框中的事件
如下图所示
勾选复选框时 :文本框可编辑,编辑文本框的数字后 总金额会重新计算并统计
1. 首先需要在后台写一个计算的方法
写方法的代码我就不写了,然后在勾选复选框的时候,写一个触发事件。(我写的是将页面的数据存在临时表中 datatable和list 都可以这个因人而异)
2.GridView控件内文本框的TextChanged 不能直接写在RowDataBound中 我之前就是卸载这个事件中, 页面加载的时候进去了
可勾选的时候死活不会触发事件,后来发现这个需要把事件写在RowCreated中
两者的区别在于:
RowDataBound是在GridView控件生成时生成,只一次;
而RowCreated在GridView的每个事件PostBack时,都是重新生成。
所以首先得在GridView中写这个
后台代码如下:
这样就搞定啦
如下图所示
勾选复选框时 :文本框可编辑,编辑文本框的数字后 总金额会重新计算并统计
1. 首先需要在后台写一个计算的方法
写方法的代码我就不写了,然后在勾选复选框的时候,写一个触发事件。(我写的是将页面的数据存在临时表中 datatable和list 都可以这个因人而异)
2.GridView控件内文本框的TextChanged 不能直接写在RowDataBound中 我之前就是卸载这个事件中, 页面加载的时候进去了
可勾选的时候死活不会触发事件,后来发现这个需要把事件写在RowCreated中
两者的区别在于:
RowDataBound是在GridView控件生成时生成,只一次;
而RowCreated在GridView的每个事件PostBack时,都是重新生成。
所以首先得在GridView中写这个
onrowdatabound="GrdVewInvoiceHeader_RowDataBound"
后台代码如下:
protected void GrdVewInvoiceHeader_RowCreated(object sender, GridViewRowEventArgs e) { if (e.Row.RowIndex >= 0) { TextBox txtPaidTaxAmt = (TextBox)e.Row.Cells[10].FindControl("txtPaidTaxAmt");//文本金额 txtPaidTaxAmt.TextChanged += txtPaidTaxAmt_TextChanged; } } protected void txtPaidTaxAmt_TextChanged(object sender, EventArgs e) { TextBox txtPaidTaxAmt = (TextBox)sender; SumTotleAmt();//计算合计金额 }
这样就搞定啦
相关文章推荐
- 课堂作业:评估手机输入法——讯飞
- headroom.js –在不需要页头时将其隐藏
- java验证码生成代码
- php7在centos上源码安装
- 字 典 加 密
- NYOJ Substring--308
- JavaScript基础教程――入门必看篇
- 复杂链表的复制
- Apache Shiro 标签模式授权
- 基于虚拟主机构建个人网站
- c++学习之运算符重载
- 视频文件截图
- Unity移动游戏优化解决方案--前篇
- window下安装redis以及配置phpredis
- 常见链表面试题之判断链表是否相交,并求交点
- 数据驱动来控制界面
- 【随笔】Linux文件的三个时间属性
- nagios安装和配置
- hdu 1561 The more, The Better【树型dp】
- USB驱动程序框架