为什么我无法获得此隐藏字段的值(value)?
我有控制权...
<asp:HiddenField ID="HiddenFieldServerDateTime" runat="server" />
呈现为...
<input type="hidden" name="ctl00$cph_main$HiddenFieldServerDateTime" id="ctl00_cph_main_HiddenFieldServerDateTime" value="08/01/2010 10:54:11"
我正在尝试获得使用的值(value)...
var serverDateTime = $("#HiddenFieldServerDateTime").attr('value');
那怎么了
我更喜欢
var dateTime = $("[id$=_HiddenFieldServerDateTime]").val();
最佳答案
因为jQuery对asp:HiddenField
一无所知。它在HTML结构中查找<input type="hidden" name="ctl00$cph_main$HiddenFieldServerDateTime" id="ctl00_cph_main_HiddenFieldServerDateTime" ...
。因此,没有ID= HiddenFieldServerDateTime
的输入。有几种方法可以解决此问题:
<asp:HiddenField ID="HiddenFieldServerDateTime"
runat="server"
CssClass="SomeStyle" />
使用以下选择器:
var serverDateTime = $(".SomeStyle").val();
CssClass
在 HiddenField
类中不是可用的类(并且它没有 Attributes
集合,因此您不能手动添加它)。 ClientID
属性:var serverDateTime = $("#<%= HiddenFieldServerDateTime.ClientID %>").val();
<div class="date-time-wrap">
<asp:HiddenField ID="..." runat="server" />
</div>
var serverDateTime = $('.date-time-wrap input[type=hidden]').val();
关于asp.net - jQuery隐藏字段,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2027062/