Javascript 如何从usercontrol更新控件的ID
我有一个aspx页面,其中有一个div control id=“mainblock” 我创建了一个usercontrol,它根据登录页动态检索一个值 我必须将此值作为id传递给div id=“mainblock”,以便将其id更改为该值 我尝试了很多事情,但根本不能工作 首先,我尝试在用户控件中编写一个服务器端代码,以便像这样进行更新Javascript 如何从usercontrol更新控件的ID,javascript,asp.net,user-controls,Javascript,Asp.net,User Controls,我有一个aspx页面,其中有一个div control id=“mainblock” 我创建了一个usercontrol,它根据登录页动态检索一个值 我必须将此值作为id传递给div id=“mainblock”,以便将其id更改为该值 我尝试了很多事情,但根本不能工作 首先,我尝试在用户控件中编写一个服务器端代码,以便像这样进行更新 protected void Page_Load(object sender, EventArgs e) { divid = dynamici
protected void Page_Load(object sender, EventArgs e)
{
divid = dynamicid();
var control = this.Page.FindControl("mainblock");
if (control != null)
{
control.ID = divid.ToString();
}
}
<script type="text/javascript">
document.getElementById('mainblock').id = document.getElementById('<%= usercontrolidvalue.ClientID %>').innerText;
</script>
这不会改变父页面中DIV的id
我尝试使用javascript,以便从用户控件的控件复制innertext并更新当前页面控件id,如下所示
protected void Page_Load(object sender, EventArgs e)
{
divid = dynamicid();
var control = this.Page.FindControl("mainblock");
if (control != null)
{
control.ID = divid.ToString();
}
}
<script type="text/javascript">
document.getElementById('mainblock').id = document.getElementById('<%= usercontrolidvalue.ClientID %>').innerText;
</script>
document.getElementById('mainblock').id=document.getElementById('').innerText;
这给了我这个错误。。
仅允许在包含内容控件的内容页中直接使用内容控件
有没有办法从usecontrol更新控件的当前id
请提供任何帮助您不能从代码隐藏更改ID的值。但是,您可以从aspx代码设置客户端ID 你有一组有限的id值吗?然后,您可以在aspx中执行以下操作:
<div runat="server" clientidmode="Static" id="div1">one</div>
<div runat="server" clientidmode="Static" id="div2">two</div>
<div runat="server" clientidmode="Static" id="div3">three</div>
<div runat="server" clientidmode="Static" id="div4">four</div>
这将在输出HTML中只剩下div four