当我们使用文字来创建它时,如何查找控件

时间:2010-10-29 12:34:21

标签: asp.net findcontrol

我正在使用一个面板然后在其中创建一个文字,而不是我创建:

string temp ="
<input type="checkbox" id="forum0">
<input type="checkbox" id="forum1">
<input type="checkbox" id="forum2">
<input type="checkbox" id="forum3">
<input type="checkbox" id="forum4">
<input type="checkbox" id="forum5">
" ...

然后将此sting分配给

literal.text=temp;

现在,如果我想找到带有id = forum0的复选框,我是否这样做,我正在使用findcontrol我已经使用了几乎所有的方式帮助举例。

谢谢

2 个答案:

答案 0 :(得分:2)

如果您使用文字控件向表单添加表单元素,则无法通过FindControl方法获取这些控件。因为它们作为静态html元素添加到您的页面中。

您可以通过两种方式在服务器端与他们联系:

  1. 您应该将它们添加为服务器控件。然后你可以完美地访问它们。
  2. 如果您只想在页面回发时访问其值,则可以使用“请求”:

    string yourControlsValue = Request [“Your_Controls_Name”];

答案 1 :(得分:0)

ASP.Net只会实例化在aspx页面上找到的控件的控件对象,而不是通过实际呈现的HTML(即创建复选框的位置)提供的控件。您应该找到一个返回到页面处理程序的参数,其名称为“forum0”,并且应该可以通过Request["forum0"]构造进行访问。