jQuery-获取数组中输入的值

jQuery - Get value of inputs in array

本文关键字:输入 获取 数组 jQuery-      更新时间:2023-09-26

对于页面上每个ID以"_name"answers"_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();
}

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

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

您不需要使它成为一个数组,它已经是了。

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

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