繁体   English   中英

获取隐藏的字段值Jquery?

[英]Get hidden field value Jquery?

我有以下HTML

<input type="hidden" name="conf1" value="7th IEEE/IFIP International Conference on Embedded and Ubiquitous Computing (EUC-09)">
    <input type="hidden" name="conf2" value="IEEE International Symposium on Parallel and Distributed Processsing with Applications">
    <input type="hidden" name="conf3" value="jkhga">
    <input type="hidden" name="conf4" value="test">
    <input type="hidden" name="conf5" value="The 3rd International Conference on Adaptive Business Information Systems (ABIS'09)">

    <input type="text" name="published">

我试图使用jquery将隐藏字段的值放入数组中。 这是我尝试过的:

 var conferences = new Array();

        conferences[0] = $('#conf1').val();
        conferences[1] =$("[name='conf2']").val();
        conferences[2] =$("[name='conf3']").val();
        conferences[3] = $("[name='conf4']").val();
        conferences[4] =$("[name='conf5']").val();     

任何人都可以指导我如何阅读它们吗?
提前致谢
院长

如果你打算使用jQuery,你可以这样做:

var array = $('input:hidden').map(function() {
    return this.value;
}).get();

.map()遍历集合,并将返回值放入jQuery对象中。

.get()从jQuery对象中检索数组。

var conferences = [];

$('input:hidden[name^="conf"]').each(function() {
    conferences.push($(this).val());
});
var array = $.map($('input:hidden'),function(i) {
    return i.value;
});

这将为数组分配一个值array并且比使用$(selector).map()稍微简洁一些,它返回一个jQuery对象,然后你需要调用get()来返回一个数组。

在这里演示

var conferences = new Array();    // object Array

var conferencesVal = new Array(); // string Array

$("[type=hidden]").each(function(i,e){

   // object array  =>altarnatif method
   conferences.push( {name:$(this).attr("id"),value: $(this).val()});

   //string array
   conferencesVal[i]=  $(this).val();

})

试试下面的代码。

$(...).attr('value');  

.attr(...) :仅在开始时获取对象值(创建html时)。
.val() :获取对象的属性值,该值可以多次更改。

它看起来像你的代码已经很好 ,除了没有#conf1 一切似乎都正确地写入阵列,可以通过conferences[0]conferences[1],等轻松访问。

您可以使用jQuery技巧清理它,但如果您知道只有5个会议,那么您所拥有的功能是可用的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM