在Javascript中访问asp:HiddenField

时间:2013-10-11 16:08:31

标签: jquery asp.net hidden-field

在使用asp:hiddenfields时我很困惑。

这是我的代码:

<asp:HiddenField ID ="CurrentAnswer" runat="server" Value="-1" />

并在该html页面中加载的js文件中:

$(document).ready(function () {
    alert(document.getElementById("<%= CurrentAnswer.ClientID %>"));
});

此值返回null。如果我把它放在同一个asp webform中,但不能在一个单独的js文件中,它会工作。我已经看到这几乎在我看到的每一页上完成。例如here。我不知道为什么这不起作用。有什么想法吗?

2 个答案:

答案 0 :(得分:4)

如果您想将javascript保存在单独的js文件中,则需要使用Static (or Predictable)作为ID。

<asp:HiddenField ID="CurrentAnswer" runat="server" Value="-1" 
   ClientIDMode="Static" />

单独的JavaScript文件

$(document).ready(function () {
    alert($("#CurrentAnswer").val());
});

答案 1 :(得分:0)

如果CurrentAnswer ID不是动态的,您可以这样做:

$(document).ready(function () {
    alert(document.getElementById("CurrentAnswer"));
});

当然,这会给你一个对象,所以你可以调用.val()来获取它的值。