如何在ASP.NET中使用JavaScript获得服务器控件ID
如题 --------------------编程问答-------------------- document.getElementById("<%=DeleteImgNo.ClientID %>").value你控件的ID.clientId --------------------编程问答-------------------- 后台的写法
this.btnDelete.Attributes.Add("onclick", "ImageDel("+this.btnDelete.ClientID+");");
JS
ImageDel(btnId)
{
alert(btnId);
}
HTML
btnDelete 删除按钮 --------------------编程问答-------------------- var obj=document.getElementById("服务器控件ID"); --------------------编程问答-------------------- function getControalID(controlName) {
var RegString = new RegExp(".*?" + controlName+ ".*?");
for (i = 0; i < document.all.length; i = i + 1) {
if (RegString.test(document.all[i].id)) {
return document.all[i];
}
}
return false;
} --------------------编程问答-------------------- 你的意思不太明确! 不知道我说的是否是你问的! 如果不是!你可以在说清楚点! --------------------编程问答-------------------- document.getElementById(" <%=DeleteImgNo.ClientID %>").value --------------------编程问答-------------------- alert("<%=服务端控件的ID.ClientID %>") --------------------编程问答-------------------- var p=document.getElementById('<%=Textbox1.ClientID %>')
--------------------编程问答-------------------- 围观 --------------------编程问答-------------------- 问题太简单了,都抢这答,你这100太大方了 --------------------编程问答-------------------- 路过…… --------------------编程问答-------------------- 估计她问的就是html页面中的服务器空间ID。 --------------------编程问答-------------------- #10楼 我彻底鄙视你(#‵′)凸
我不认为简单 例如跨页面看你怎么获取 父窗体的服务器控件Id
例如:父窗体:服务器控件Id为"content"
子窗体:window.opener.document.getElementById('<%=content.ClientID').value
可以吗?
如果可以,我跳楼!!!!!!!! --------------------编程问答-------------------- document.getElementById(" <%=Control.ClientID %>").value
正解
另外如果你没有用UserControl的话,可以直接在JS中用服务器端ID。 --------------------编程问答--------------------
正解 --------------------编程问答-------------------- document.getElementById(" <%=Control.ClientID %>").value
--------------------编程问答-------------------- var userName=document.getElementById('<%=this.tbName.ClientID %>').value; --------------------编程问答-------------------- <asp:TextBox ID="tb" runat="server" ></asp:TextBox>
转化成 客户端会变成 <input name="tb" type="text" id="tb" />
说白了就是你 clientID 属性 --------------------编程问答-------------------- 正解
--------------------编程问答-------------------- ClientID --------------------编程问答-------------------- var obj=document.getElementById("服务器控件ID"); --------------------编程问答-------------------- Control.ClientID --------------------编程问答-------------------- 正解 --------------------编程问答-------------------- document.getElementById(" <%=servercontrol.ClientID %>").value
jf --------------------编程问答--------------------
function Test() {
alert(document.getElementById(" <%=txt1.ClientID %>").value);
}
--------------------编程问答--------------------
<asp:Button ID="btn1" runat="server" Text="Test" OnClientClick="Test()" />
<asp:TextBox ID="txt1" runat="server" Text="Test"></asp:TextBox>
正解
我是来抢分的 --------------------编程问答-------------------- $("#id"); --------------------编程问答-------------------- 上面的都对 --------------------编程问答-------------------- 上面已经回答的很清楚了,不过友情提醒一下有些服务器控件如DataList,会转化成表格的形式,不能直接当服务器控件用,比如调用属性,方法什么的,唐突了勿见怪 --------------------编程问答-------------------- mark --------------------编程问答-------------------- document.getElementById()
--------------------编程问答-------------------- document.getElementById(" <%=DeleteImgNo.ClientID %>").value
你控件的ID.clientId
好大方啊你。 --------------------编程问答-------------------- 都抢着回答啊。。。高分的力量~ --------------------编程问答-------------------- 学习了。 --------------------编程问答-------------------- document.getElementById(" <%=DeleteImgNo.ClientID %>").value --------------------编程问答-------------------- 1.在浏览器中查看源代码 找到控件对应的Id
<asp:HiddenField ID="hdn_LevelOneId" runat="server" />
ctl00$ContentPlaceHolder1$hdn_LevelOneId
2.JavaScript里
document.getElementById("ctl00$ContentPlaceHolder1$hdn_LevelOneId").value
因为ctl00$ContentPlaceHolder1$hdn_LevelOneId是不会变的 --------------------编程问答-------------------- 个人总结:
1、用户控件中的服务器控件:这个时候Javascript捕获控件ID的时候要加上用户控件的名称,例如:
服务器控件名:txtUserName;用户控件名:RegisterUser;那么Javascript得到控件ID的方式应该是:
var id=document.getElementById("RegisterUser1_txtUserName");
2、页面中存在母版页:(注意不是客户端看到的$)
母版页内的服务器控件:var id=document.getElementById("ct100_txtUserName");
母版页外的服务器控件:var id=document.getElementById("ctl00_ContentPlaceHolder1_txtUserName");
3、母版页与用户控件结合:(注意不是客户端看到的$)
母版页内的服务器控件:var id=document.getElementById("ct100_RegisterUser1_txtUserName");
母版页外的服务器控件:var id=document.getElementById("ctl00_ContentPlaceHolder1_RegisterUser1_txtUserName");
4、一般情况(也就是没有母版页和用户控件):
var id=document.getElementById("txtUserName");
--------------------编程问答-------------------- document.getElementById(" <%=DeleteImgNo.ClientID %>").value
你控件的ID.clientId
this.btnDelete.Attributes.Add("onclick", "ImageDel("+this.btnDelete.ClientID+");");
--------------------编程问答-------------------- 学习学习!
补充:.NET技术 , ASP.NET