我想在服务器端运行特定元素之后添加一个表格元素,但当我试图访问该元素的ID时,它被视为字符串。
我已经尝试在警报中显示元素的ID或元素,但它是字符串。 我已经尝试查找stackoverflow上的其他帖子,但它们都说要访问的方式与我产生字符串的方式相同。 我已经尝试将与字符串中的代码相同的代码放在aspx文件中,它可以工作,所以我知道<%=message.ClientID%>没有问题。
在aspx文件中
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<div class="Manager">
<p id="message" runat="server" class="caption">
There aren't any users in the database
</p>
<form runat="server">
<asp:HiddenField id="hfData" runat="server"/>
</form>
<script src="js/Manager.js" ></script>
</div>
</asp:Content>
在 Manager.js 文件中。
var message = document.getElementById('<%=message.ClientID %>');
message.parentNode.insertBefore(tbl, message.nextSibling);
当我查看消息的值时,它等于未定义,并且以下代码不执行。
我尝试了以下方法来访问id:
var str = '<%=message.ClientID%>';
alert(str);
但是它将 <%=message.ClientID%> 作为字符串进行警报。应该生成 ContentPlaceHolder1_message 的输出。