有关于引用
的问题Background
来自JS函数。 由于
引发了空引用错误,因此该函数被命中 <asp:HiddenField ID="editcheck" runat="server"/>
在函数中行。
任何想法?
由于
PS: 这是抛出异常的实际行。
var e = document.getElementById('<%=editcheck.ClientID%>');
无法在空对象上检查错误状态值,或者关闭某些内容。所以这就是我要问JS函数看到元素的原因。
答案 0 :(得分:1)
我猜你在将HiddenField呈现给浏览器之前调用脚本。
你能确保在HiddenField之后调用脚本吗?
<asp:HiddenField ID="editcheck" runat="server"/>
document.getElementById('<%=editcheck.ClientID%>');
或 如果必须使用DOM操作,可以使用jQuery。以下脚本与将HiddenField放在页面中的位置无关。
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">
$(function () {
if ($("#<%= editcheck.ClientID %>").val() === "true") {
return confirm("yadayad");
}
});
</script>
<asp:HiddenField ID="editcheck" runat="server" />