2010-01-28 252 views
1

在jquery中,如何將只能是真/假的變量保存到隱藏字段中並在回發後檢索值?jQuery隱藏字段

+0

您的意思是在回發期間檢索服務器上的值嗎?而且,這是一個asp控件產生的隱藏域嗎? – 2010-01-28 19:44:43

+0

感謝您的回覆。在客戶端檢索一個值,即使用javascript變量。是的,這是一個輸入字段,但如果必須的話,可以將其更改爲asp:HiddenField。 – Victor 2010-01-28 19:48:31

回答

3

jQuery的部分是沒有什麼特別的,只是把在該領域的價值的一些文字表述,後來從現場閱讀:

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

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

然而,在一個隱藏字段的值不下去回發本身。您必須使用runat="server"將該字段變爲服務器控件,將其更改爲HiddenField控件,或者從Request.Form或Request.QueryString中讀取值,並將該值放入放入新頁面的字段中。

+0

感謝您的回覆,我會將其轉變爲HiddenField控件,並試用 – Victor 2010-01-28 20:31:49

3

由於帶有runat = 「服務器」 設置爲這樣的輸入:

<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()); 
}); 

注意,布爾不會解析一個asp.Net bool.ToString(),除此之外都是如此。如果你使用它們,你需要編寫一個小函數來檢查value.toLowerCase()==「true」,然後假設你有一個真正的值。

+0

+1記住要使用.ClientID :-) – roufamatic 2010-01-28 20:01:01