zoukankan      html  css  js  c++  java
  • 在GridView控件内文本框实现TextChanged事件,勾选复选框时 :textbox文本框可编辑,编辑文本框的数字后 总金额会重新计算并统计

    关于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();//计算合计金额
        }
    

      这样就搞定啦

  • 相关阅读:
    ansible 2.2的源码编译安装
    存储过程-快速上手
    从库重启后报1062错误
    删除一张600万记录表的一个索引需要多长时间?
    mysql主从复制Error1205
    浅谈管理(三)如何管理资料库
    kettle之时间字段默认值为空或’0000-00-00’问题
    浅谈管理(二)项目管理
    乌龙之Ignoring query to other database问题
    一、安装
  • 原文地址:https://www.cnblogs.com/happychen/p/5512301.html
Copyright © 2011-2022 走看看