String vs String[] in javascript



>我正在尝试获取输入的值。我应该得到一个字符串数组,但我只得到一个字符串。

$('input[name="paramDescriptions"]').val();不应该获取名称等于 x 的输入的所有值吗?

我该如何解决这个问题

$('#submit').click(function() {
  var paramDescriptions = $('input[name="paramDescriptions"]').val();
  console.log(paramDescriptions);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="inputDiv" class="col-sm-10">
  <div class="input-group bottom15"><span class="input-group-addon">1</span><input type="hidden" class="form-control" name="paramName" value="LASTNAME"><input type="text" class="form-control" placeholder="Insert the description for LASTNAME" name="paramDescriptions" id="paramName1" data-validation-message="The description must be between 2 and 25 characters. No special characters allowed."
      data-validation="[L>=2, L<=25, MIXED]" required=""></div>
  <div class="input-group bottom15"><span class="input-group-addon">2</span><input type="hidden" class="form-control" name="paramName" value="EXPECTED"><input type="text" class="form-control" placeholder="Insert the description for EXPECTED" name="paramDescriptions" id="paramName2" data-validation-message="The description must be between 2 and 25 characters. No special characters allowed."
      data-validation="[L>=2, L<=25, MIXED]" required=""></div>
</div>
<button id="submit">Submit</button>

迭代输入的节点集合并将每个值推送到字符串数组:

$('#submit').click(function() {
  //Declare array for storing string values
  let myInputValues = [];
  let inputs = $('input[name="paramDescriptions"]');
  //Iterate your collection and push values to string array
  $(inputs).each(function(index, ele){
       myInputValues.push($(ele).val());
  }
});

遍历所有名为 paramDescriptions 的输入并记录值:

$('#submit').click(function() {
  var descriptions = [];
  $('input[name="paramDescriptions"]').each(function(){
    var paramDescriptions = $(this).val();
    descriptions.push(paramDescriptions);
    console.log(paramDescriptions);
  });
  console.log(descriptions);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="inputDiv" class="col-sm-10">
  <div class="input-group bottom15"><span class="input-group-addon">1</span><input type="hidden" class="form-control" name="paramName" value="LASTNAME"><input type="text" class="form-control" placeholder="Insert the description for LASTNAME" name="paramDescriptions" id="paramName1" data-validation-message="The description must be between 2 and 25 characters. No special characters allowed."
      data-validation="[L>=2, L<=25, MIXED]" required=""></div>
  <div class="input-group bottom15"><span class="input-group-addon">2</span><input type="hidden" class="form-control" name="paramName" value="EXPECTED"><input type="text" class="form-control" placeholder="Insert the description for EXPECTED" name="paramDescriptions" id="paramName2" data-validation-message="The description must be between 2 and 25 characters. No special characters allowed."
      data-validation="[L>=2, L<=25, MIXED]" required=""></div>
</div>
<button id="submit">Submit</button>

你可以

在这里使用 jquery map(),如下所示:

$('#submit').click(function() {
  var paramDescriptions = $('input[name="paramDescriptions"]').map(function() {
    return this.value || '';
  }).get();
  console.log(paramDescriptions);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="inputDiv" class="col-sm-10">
  <div class="input-group bottom15"><span class="input-group-addon">1</span><input type="hidden" class="form-control" name="paramName" value="LASTNAME"><input type="text" class="form-control" placeholder="Insert the description for LASTNAME" name="paramDescriptions" id="paramName1" data-validation-message="The description must be between 2 and 25 characters. No special characters allowed."
      data-validation="[L>=2, L<=25, MIXED]" required=""></div>
  <div class="input-group bottom15"><span class="input-group-addon">2</span><input type="hidden" class="form-control" name="paramName" value="EXPECTED"><input type="text" class="form-control" placeholder="Insert the description for EXPECTED" name="paramDescriptions" id="paramName2" data-validation-message="The description must be between 2 and 25 characters. No special characters allowed."
      data-validation="[L>=2, L<=25, MIXED]" required=""></div>
</div>
<button id="submit">Submit</button>

最新更新