-6ren">
gpt4 book ai didi

c# - 如何从代码隐藏的更新面板中找到客户端元素?

转载 作者:行者123 更新时间:2023-11-30 12:57:23 27 4
gpt4 key购买 nike

在 asp.net 中开发用户控件时,我发现主要困难是找到位于更新面板内的 html 客户端元素。

.ascx 端包含以下内容:

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<div id="<%=ClientID%>_MyElement">
</div>
</ContentTemplate>
</asp:UpdatePanel>

我需要在我的代码隐藏中获得对该 div 的引用。

protected void Page_Load(object sender, EventArgs e)
{
if(IsPostBack)
{
//var c = UpdatePanel1.FindControl("<%=ClientID%>_MyElement"); //<-not working.
//:
//get some values from c
//:
}
}

现在,由于还有 Ajax (JavaScript) 操纵该 div:

  1. 我不能为那个 div 设置 runat="server"。
  2. 我必须使用 <%=ClientID%>_MyElement 作为 ID 约定。

所以假设 div 将保持原样 - 有没有办法获取引用从后面的代码到它?

最佳答案

试试这个:

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<div id="MyElement" runat="server">
</div>
</ContentTemplate>
</asp:UpdatePanel>

在代码后面

protected void Page_Load(object sender, EventArgs e)
{
if(IsPostBack)
{
var c = MyElement;

}
}

在 JavaScript 中

var MyElement=document.getElementById('<%= MyElement.ClientID');

关于c# - 如何从代码隐藏的更新面板中找到客户端元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18572898/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com