在页面上动态创建表格行及数据,但是在提交按钮的处理函数中,发现表格内容已经没有了,无法获取数据并提交到数据库,请高手指点一二,谢谢

解决方案 »

  1.   

    把你的数据记录整合为json Post给后台,内容怎么会没有,只是因为你提交的方式不对,或者获取的不对
      

  2.   

    把你的数据记录整合为json Post给后台, 是什么意思?
      

  3.   

    后台获取不到,页面有数据,提交时就没有了,table的行数为0
      

  4.   

    在提交button的click函数执行前,会页面刷新,在Page_Load中,表格内容就已经被清空了
      

  5.   

    表格在客户端就是定义了一下:
    <asp:Table ID="Table_refer" runat="server" BorderColor="Blue" 
                style="border-collapse:collapse" Width="100%">
            </asp:Table>
    然后表格行都是在后台加入的:
    protected void Page_Load(object sender, EventArgs e)
        {   if (!IsPostBack)
            {   InitTable();
            }
        }
    private void InitTable()
    {
            TableRow row = new TableRow();                //第一行:填报单位
            Table_refer.Rows.Add(row);
            TableCell cell = new TableCell();         
            cell.Text = "";
            row.Cells.Add(cell);
            cell = new TableCell();
           //这里生成所有行,列,里面的数据有数据库查询得来,也有接受输入进来的
    }
    至于提交表单数据,就是在页面上加入一个button,在处理函数中调用提交函数ComitBillRecord,但是在进入后,表格内容已经被清空了,此时rowcount已经是0
    protected void LinkButton_commmit_Click(object sender, EventArgs e)
        {
            int rowcount = Table_refer.Rows.Count;         ComitBillRecord();
          
            Response.Write("<script>window.open('refersalesfirst.aspx','rightFrame')</script>");
        }
      

  6.   

     if (!IsPostBack)这的问题
      

  7.   

    我知道在Page_Load里面,把 InitTable()调用放在if (!IsPostBack)里面,就直接把table清空掉了,但是把 InitTable()调用放在外面也不行,因为InitTable只是初始化表格行列,内容还要客户端输入的,这样只是table保留住原来的行列,内容却是没有了