jQuery - 获取数组中的输入值

时间:2013-07-25 10:50:14

标签: javascript jquery

对于页面上的每个输入字段,其ID以“_name”和“_value”结尾,我放置了两个数组。对于名称数组中输入的每个值(nameArr和valArr的输入数量相等),我想在输入namrArr作为标题之前放置,然后隐藏输入。但是,一旦放入数组中,我似乎无法访问输入的值??

var name = $("[id$=_name]");
var nameArr = $.makeArray(name);
var val = $("[id$=_value]");
var valArr = $.makeArray(val);

for(var i = 0; i < valArr.length; i++){
    $(nameArr[i]).before("<h3>"+nameArr[i].val()+"</h3>");
    $(nameArr[i]).hide();
}

3 个答案:

答案 0 :(得分:1)

你不需要把它变成一个数组,它已经是。

for(var i = 0; i < val.length; i++){
    $(name[i]).before("<h3>"+$(name[i]).val()+"</h3>");
    $(name[i]).hide();
}

答案 1 :(得分:1)

您可以简化它,因为您的jQuery选择器已经返回一个数组:

$("[id$=_name]").each(function (index, item) {
    $(this).before("<h3>" + $(this).val() + "</h3>");
    $(this).hide();
});

答案 2 :(得分:0)

使用map() ..

  var valuesArray=$("[id$=_name]").map(function(){
      return this.value;
 }).get();

  var namesArray=$("[id$=_value]");


 for(var i = 0; i < namesArray.length; i++){
   $(namesArray[i]).before("<h3>"+valuesArray[i]+"</h3>");
   $(namesArray[i]).hide();
 }