jQuery隐藏字段

时间:2010-01-28 19:41:21

标签: jquery asp.net-3.5

在jquery中,如何将只能为true / false的变量保存到隐藏字段中并在回发后检索值?

2 个答案:

答案 0 :(得分:3)

jQuery部分没什么特别的,只是在字段中放置一些值的文本表示,然后从字段中读取它:

$('#myHiddenField').val(myBoolean?'1':'0');

myBoolean = $('#myhiddenField').val() == '1';

但是,隐藏字段中的值本身不能在回发中存活。您必须使用runat="server"将字段转换为服务器控件,将其更改为HiddenField控件,或者从Request.Form或Request.QueryString中读取值并将值放入放入新字段的字段中页。

答案 1 :(得分:3)

给出runat =“server”的输入,如下所示:

<input type="hidden" runat="server" id="hdnValue" value="0" />

<asp:HiddenField runat="server" id="hdnValue" ... />

使用以下脚本

var hiddenValue;
// On load
$(function()
{  
  // Get hidden field by ID
  hiddenValue = $('#<%= hdnValue.ClientID %>');
  // Get value
  var value = hiddenValue.val();
  alert(value);
  // Set value
  hiddenValue.val(1);
  alert(hiddenValue.val());
});

请注意,Boolean不会将asp.Net bool.ToString()解析为true,而不是true。如果你使用它们,你会想要写一个小函数来检查value.toLowerCase()==“true”,然后再假设你有一个真值。