jQuery访问输入隐藏值

时间:2010-12-07 12:40:47

标签: javascript jquery

如何使用jQuery访问<input type="hidden">标记的value属性?

9 个答案:

答案 0 :(得分:303)

您可以使用val()访问隐藏字段的值,就像您可以在任何其他输入元素上执行一样:

<input type="hidden" id="foo" name="zyx" value="bar" />

alert($('input#foo').val());
alert($('input[name=zyx]').val());
alert($('input[type=hidden]').val());
alert($(':hidden#foo').val());
alert($('input:hidden[name=zyx]').val());

在这个例子中,这些都意味着相同的事情。

答案 1 :(得分:15)

有一个jQuery选择器:

// Get all form fields that are hidden
var hidden_fields = $( this ).find( 'input:hidden' );

// Filter those which have a specific type
hidden_fields.attr( 'text' );

将为您提供所有隐藏的输入字段,并由具有特定type=""的人过滤。

答案 2 :(得分:11)

答案 3 :(得分:5)

要获得价值,请使用:

$.each($('input'),function(i,val){
    if($(this).attr("type")=="hidden"){
        var valueOfHidFiled=$(this).val();
        alert(valueOfHidFiled);
    }
});

var valueOfHidFiled=$('input[type=hidden]').val();
alert(valueOfHidFiled);

要设置值,请使用:

$('input[type=hidden]').attr('value',newValue);

答案 4 :(得分:3)

如果要选择单个隐藏字段,可以通过jQuery的不同选择器选择它:

<input type="hidden" id="hiddenField" name="hiddenField" class="hiddenField"/> 


$("#hiddenField").val(); //by id
$("[name='hiddenField']").val(); // by name
$(".hiddenField").val(); // by class

答案 5 :(得分:2)

<input type="hidden">没有什么特别之处:

$('input[type="hidden"]').val()

答案 6 :(得分:2)

如果你有一个asp.net HiddenField,你需要:

访问HiddenField值:

$('#<%=HF.ClientID%>').val()  // HF = your hiddenfield ID

设置HiddenFieldValue

$('#<%=HF.ClientID%>').val('some value')   // HF = your hiddenfield ID

答案 7 :(得分:1)

注意是否要从隐藏字段中检索布尔值!

例如:

<input type="hidden" id="SomeBoolean" value="False"/>

(如果您使用@Html.HiddenFor(m => m.SomeBoolean),ASP MVC将呈现此类输入。)

然后以下将返回一个字符串'False',而不是JS boolean!

var notABool = $('#SomeBoolean').val();

如果要对某些逻辑使用布尔值,请改用以下内容:

var aBool = $('#SomeBoolean').val() === 'True';
if (aBool) { /* ...*/ }

答案 8 :(得分:-1)

最通用的方式是按名称取值。输入或选择表单元素类型都没关系。

var value = $('[name="foo"]');