我的毕业设计是一个Asp.net(C#)的在线考试系统,在做出题模块时遇到一个问题,我使用的是DataList,每条填空题的空格是不确定数量的,如何动态的添加这样的TextBox,然后如何获取动态产生的TextBox的Text呢?非常感谢!

解决方案 »

  1.   

    textbox txt = new textbox();
    txt.id = "txt1";
    txt.text = "空格1";
    form1.controls.add(txt);
      

  2.   

    因为我使用的是datalist啊,我试着在datalist里放了Panel,结果可以在panel中动态添加TextBox的,关键问题是我点击“交卷”的时候如何获得刚才添加的那些TextBox中的Text呢?
      

  3.   

    在datalist生成事件里
    (datalist.findcontrol("panel")).controls.add...找不到的都用findcontrol试试吧
      

  4.   

    还是不行,我用一段简单的代码说一下,你看一下:
    private void Button1_Click(object sender, System.EventArgs e)
    {
    TextBox txt=new TextBox();
    txt.ID="t1";
    Panel1.Controls.Add(txt);
    }
    private void Button2_Click(object sender, System.EventArgs e)
    {
    Panel pl=(Panel)this.FindControl("Panel1");
    TextBox t1=(TextBox)Panel1.FindControl("t1");
    this.Response.Write(t1.Text);
    }这段执行就出错,不知道为何动态添加的TextBox是获取不到的!
      

  5.   

    我在Datalist1_ItemDataBound中动态添加的TextBox,想要在点击另外一个“交卷”按钮后获取Datalist中动态添加的TextBox的值。急啊....
      

  6.   

    你可以设置一个隐藏字段表示你有多少个空。这样读取起来就方便一些。
      做完了给我一份参考如何,谢谢! [email protected]
      我有asp做的考试系统,有你这样的功能。如果需要email 我。
      

  7.   

    行,没问题,做好了给你一份。其实有多少个空格倒不是问题,因为设计数据库的时候就考虑到这个了,所以专门有一个字段描述的,现在是Datalist1_ItemDataBound中动态加载了TextBox,交卷的时候就获取不到了!
      

  8.   

    If Not IsPostBack Then
    '读数据
    End If
      

  9.   

    动态加载了TextBox,肯定有一个信息表示多少个TextBox的。
      我用asp+javascrip做的时候,客户端动态加载TextBox 服务器也能获取的。
      

  10.   

    我也遇到这种问题,我做了一个table,点击一个按钮就能让这个table 增加一行,
    但现,能增加第一行,再点就不行了。