jQuery访问输入隐藏值

IT技术 javascript jquery
2021-01-16 05:26:44

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

6个回答

您可以使用 访问隐藏字段的值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());

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

什么更快?$('#foo') 或 $('input:hidden#foo') ?我怀疑是第二个,因为提供了更多的搜索信息,但不确定它是如何实现的,所以不知道我的感觉是否正确。编辑:好的,感谢 Abel 评论,只有 id,即 #foo 更快,我得到了答案。
2021-03-29 05:26:44
alert($('input[type=hidden]#foo').val()); 这将找到 ID 为 foo 的隐藏变量。这个搜索更具体。
2021-04-10 05:26:44
@MohammedRafeeq alert($('#foo').val()); 一样具体。因为 id 在 DOM 中是唯一的。因此,如果 html 遵循标准,它将始终只找到一个元素。除非您使用该语句来检查元素是否隐藏。
2021-04-11 05:26:44

有一个 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="".

请注意,这还将匹配 CSS 显示值为 none 的元素、宽度和高度设置为 0 的元素以及具有隐藏祖先的元素 ( api.jquery.com/hidden-selector )
2021-03-24 05:26:44

要获得value,请使用:

$.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);

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

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