问题

假设我有一些沿着(在我的aspx文件)中的东西:

<input name="chk" id="cbox1" type="checkbox">
<input name="chk" id="cbox2" type="checkbox">
<input name="chk" id="cbox3" type="checkbox">
<input name="chk" id="cbox4" type="checkbox">

如何获取.aspx.cs文件中每个元素的值? 可以在C#中调用GetElementsByName吗?



解决方法

不,您不能,除非您将此控件标记为 runat ="server".

这是因为在ASP.NET中,所有静态html都变成了一个 Literal 控件,其中 .Text 属性等于你的html.在这种情况下,它将是:

<asp:Literal>
    <input name="chk" id="cbox1" type="checkbox">
    <input name="chk" id="cbox2" type="checkbox">
    <input name="chk" id="cbox3" type="checkbox">
    <input name="chk" id="cbox4" type="checkbox">
</asp:Literal>

如果您将任何元素标记为 runat ="server",则可以从当前页面的 .Controls 集合中访问它们.

或者(如在其他答案中),您可以使用服务器控件( CheckBox CheckBoxList )进行这样的输入




相关问题推荐