Получить значения флажка типа ввода в одном массиве в требуемом формате - PullRequest
0 голосов
/ 25 октября 2018

Я пытаюсь получить значения из флажков в следующем формате массива.Может быть, это простая проблема для вас, ребята, но я действительно застрял здесь.

Это мои типы ввода

<input type="checkbox" id="any" name="chk" value="value1">
<input type="checkbox" id="any1" name="chk" value="value2">
<input type="checkbox" id="any2" name="chk" value="value3">
<input type="checkbox" id="any3" name="chk" value="value4">
<input type="checkbox" id="any4" name="chk" value="value5">

jQuery code

var fuelType =new Array();
  $.each($("input[name='chk']:checked"), function(){
    console.log($(this).val())
    fuelType.push($(this).val());
});
fuelType = fuelType.join(",");
console.log(fuelType);

Я получаю следующий журнал

["value1,value2,value3",value4",value5"]

Требуемый ответ

["value1","value2,"value3","value4","value5"]

1 Ответ

0 голосов
/ 25 октября 2018

Это то, что вам нужно, чтобы изменить свой jQuery на:

var fuelType =new Array();
$.each($("input[name='chk']:checked"), function(){
    console.log($(this).val())
    fuelType.push($(this).val());
});
console.log(fuelType);

То, что вы делали, - это присоединение массива строк и разделение их с помощью ','.Это не создает массив строк.Это создает одну строку, которая разделяет ключи с помощью ','.Если у вас был другой набор данных, вы могли бы использовать Array.prototype.map () для создания нового массива, но у вас уже есть его, как упомянул другой автор.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...