如何在JS文件里找到asp.net的控件?
以下代码中,js无法调用c#的方法,关键是用document.getElementById("BTN_TEST")为空,应该怎么解决啊?
<asp:Button ID="BTN_TEST" runat="server" Text="TEST" style="display:none;" OnClick="testJS" />
protected void testJS(object sender, EventArgs e)
{
//调用
}
--------------------编程问答-------------------- 请看一下HTML代码中有没有BTN_TEST这样一个元素,ASP.NET服务器控件在生成HTML代码时其id会使用一定规则的命名。现在最新的版本中控件支持ClientIDMode属性来使用户明确客户端对应的控件名称。
document.getElementById('BTN_TEST').click();
你可以查一下相关知识,另外如果ascx中的控件放到aspx中,命名也会发生变化。 --------------------编程问答-------------------- 删除style="display:none;" --------------------编程问答-------------------- document.getElementById('<%=Textbox1.ClientID %>')
--------------------编程问答-------------------- VS里如果设置了服务器控件的VISIBLE属性为FALS则在解析页面时,不RANDER此控件,所以在前台是找不到,可以用CSS来隐藏此控件,再用JS来取值! --------------------编程问答--------------------
123 --------------------编程问答-------------------- ,ASP.NET服务器控件在生成HTML代码时其id会使用一定规则的命名。现在最新的版本中控件支持ClientIDMode属性来使用户明确客户端对应的控件名称。
--------------------编程问答--------------------
用你这种方法,获取到的还是null。我的写法是如下,其中BTN_TEST是一个asp:button的ID.
var a = document.getElementById('<%=BTN_TEST.ClientID %>');
alert(a);
补充:.NET技术 , ASP.NET