у меня есть это
<input data-sector = "10" name = "people" value = "21">
<input data-sector = "10" name = "people" value = "22">
<input data-sector = "11" name = "people" value = "23">
<input data-sector = "11" name = "people" value = "24">
<input data-sector = "12" name = "people" value = "25">
и с jQuery мне нужно преобразовать это:
var json = {"10":[21,22], "11":[23,24], "12":[25]}
Я использую это, но не будет работать. Мне нужна помощь.
var code = [];
$('[name=people]').each(function () {
var local = $(this);
code[local.data('sector')].push.local.val();
});
push
— это функция, вы должны вызывать ее с помощью ()
.code
должен быть объектом, а не массивом.var code = {};
$('[name=people]').each(function() {
var local = $(this);
var sector = local.data('sector');
if (!code[sector]) {
code[sector] = [];
}
code[sector].push(local.val());
});
console.info(code);
<script src = "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input data-sector = "10" name = "people" value = "21">
<input data-sector = "10" name = "people" value = "22">
<input data-sector = "11" name = "people" value = "23">
<input data-sector = "11" name = "people" value = "24">
<input data-sector = "12" name = "people" value = "25">
Ваш json недействителен.