【发布时间】:2017-02-16 01:15:32
【问题描述】:
如何引用在页面加载期间添加到 html 的元素?
在我的示例中,我尝试在页面加载期间单击 ID 为 Clicker 的按钮。
但是,因为它是在页面加载期间添加到 html 中的,所以我得到了上下文错误。
错误: 编译器错误消息:CS0103:当前上下文中不存在名称“clicker”
protected void Page_Load(object sender, EventArgs e)
{
//add button to html
locationsTable.InnerHtml = htmlString;
//click the button
clicker.PerformClick();
}
htmlString += "<td><button id=\"clicker\" runat=\"server\" class=\"btn btn-default btn-xs\" onclick=\"return false;\"><span class=\"glyphicon glyphicon-option-horizontal\"></span></button>" + " " + "<a href=\"ModifyOrder.aspx?cid=" + row["CustomerID"] + "\" class=\"btn btn-primary btn-xs\">Add License</a></td>";
在页面加载期间,这个 htmlString 被添加到一个 html 表格中(与其他元素一起,但它们无关紧要)。
locationsTable.InnerHtml = htmlString;
【问题讨论】:
-
我认为您将 javascript 与 c# 混淆了
-
不 ....................
-
那么让我们澄清一下。当用户单击页面 html 中的 id="clicker" 按钮时,您是否尝试执行操作?
-
是的。动作可以是任何东西。我只是想用点击器的 ID 来定位元素。问题是 Clicker 尚未添加到 DOM 中。所以 C# 编译器找不到它。所以我得到参考错误。
-
根据 C# 编译器“clicker”不存在。因为在页面加载之前,它不会被添加到 html 或 .aspx 页面中。那么如何将任何内容分配给按钮点击器?
标签: c#