[英]How can i get hidden control id in parent page in the user control page using javascript
How can i get hidden control id in parent page in the user control page using javascript. 如何使用javascript在用户控制页面的父页面中获取隐藏的控件ID。 there is a hidden input control in the page.
页面中有一个隐藏的输入控件。 i want to assign value to this control in the user control page which is used in this page.
我想在此页面中使用的用户控制页面中为此控件赋值。 its an ascx page control.
它是一个ascx页面控件。
<input type="hidden" runat="server" name="isChanged" id="isChanged" value="0" />
Register like as below 注册如下
isChanged.ClientID- is serverside property... so this will work for you
document.getElementById("<%=isChanged.ClientID %>");
You could do this using jquery using the 'ends with' selector. 您可以使用jquery使用'ends with'选择器来完成此操作。
var element = $("input[id$=isChanged]")[0];
This assumes you only have one input on your page with an id which ends in 'isChanged'. 这假设您的页面上只有一个输入,其id以“isChanged”结尾。 The reason we use ends with is because asp will make the client side id of your control something like ct100$placeholder1$mypanel$isChanged.
我们使用的结果是因为asp会使你的控件的客户端id像ct100 $ placeholder1 $ mypanel $ isChanged。
A more robust solution would be to have a property on your usercontrol (eg 'ClientIdOfHiddenField') that you set from your parent page on page_load 更强大的解决方案是在user_trol上设置一个属性(例如'ClientIdOfHiddenField'),您可以在page_load上的父页面上设置该属性
protected void Page_Load(object sender, EventArgs e)
{
UserControl1.ClientIdOfHiddenField = isChanged.ClientID;
}
then in the markup of your user control you can have 然后在你的用户控件的标记中你可以拥有
var element = document.getElementById("<%= ClientIdOfHiddenField %>");
If you are using jQuery you should be able to use 如果您使用的是jQuery,那么您应该可以使用它
var hidden = $('input[id$="isChanged"]');
otherwise @Pranay Rana's answer should work. 否则@Pranay Rana的答案应该有效。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.