我在表格中动态加载TextBox控件,可表格中的TextBox状态总保存不住,一点别的按钮,自动生成的TextBox就没了。应该怎么解决啊?

解决方案 »

  1.   

    HtmlTableCell cell1=new HtmlTableCell(); cell=new HtmlTableCell();
    cell.InnerText = "" cell.InnerHtml +="<input type ='hidden' name='meterid' value='"+meter_id+"'>" ;
    cell.Attributes.Add("rowspan",rows.ToString());
    htmlRow.Cells.Add(cell);
      

  2.   

    重新加载了,
    if(!Page.IsPostBack)
    {
    }
      

  3.   

    将自动生成TextBox的代码段放在以下判断中
    void Page_load()
    {
        if (!IsPostack)
        {
            //自动生成TextBox
        }
    }
      

  4.   

    页面回发的时候 你的空件没有被加载
    see:
    http://forums.asp.net/thread/1254870.aspx
      

  5.   

    我想做一个专门用来增加TextBox的按钮,就像网易邮箱里那个增加附件的按钮一样,可以无限制的增加,那我还能把增加TextBox的按钮写在!IsPostBack里吗?
      

  6.   

    看这里是否符合你的要求
    http://blog.csdn.net/IamBird/archive/2006/05/09/714204.aspx
      

  7.   

    动态生成的TextBox肯定是无法取得其值,因为如果有服务事件触发,那么并没有触发那个动态生成TextBox的事件,比如说你点击按钮,那么一定是要到服务器端走一遭的,而动态生成的TextBox事件是在点击按钮之前发生的,已经发往客户端了.要解决这个办法,你可以用单独的一个页面在它的Page_Load事件中动态生成TextBox,而且一定要去掉if(!this.isPostBack)这一句,使这个页面每次到服务器都要执行Page_Load()中的代码。这样就可以取得TextBox中的值了。我的一个批量录入系统就是这样解决的!
      

  8.   

    当然,如果TextBox个数比较少的话,还可以用ViewState在点击按钮之前保存TextBox中的内容,点击按钮之后重新取出来就OK了!
      

  9.   

    你可以进入我的那个系统试一试,其中的“成绩录入”模块就是在DataGrid中动态添加TextBox来完成批量录入的。
    http://www.xfyz.cn/dhy/index.aspx
    测试用户名和密码均为:test
    成绩录入时,录入密码为空,里面有一些示例数据,你可以参考一下!