asp:从后面的代码访问转发器项itemtemplate中的html元素

时间:2013-10-03 13:06:34

标签: c# html asp.net asprepeater

当输入在asp:repeater中时,如何在ascx.cs文件中访问HTML“input type =”checkbox“data-item =”myItems“id =”id123“”? 这不起作用,因为findcontrol仅适用于system.web.ui.control:

var checkBox = (System.Web.UI.HtmlControls.HtmlInputCheckBox)e.Item.FindControl("id123");



此:

var checkBox = (Checkbox)e.Item.FindControl("id123");
如果我使用asp:checkbox而不是html输入,

将起作用。
但接下来的另一个问题是:asp中的html输入“data-”属性的等价物是什么?复选框?

2 个答案:

答案 0 :(得分:2)

回答第一部分

您需要在html输入上设置runat="server"

<input type="checkbox" id="id123" data-item="myItems" runat="server".....

回答第二部分

您可以在服务器控件上指定任何属性,它们将按生成的html中的方式进行喷出。所以你可以:

<asp:checkbox id="id123" data-item="myItems" runat="server"....

答案 1 :(得分:1)

您需要在要从代码隐藏中访问的任何元素中包含runat="server"属性。