laimas,
Все верно - в заголовке я просто указал для себя правильную последовательность ответов, на сервер же конечно должны приходить ID ответов, причем желательно в том порядке, что указано. А для этого мне нужно собрать массив для каждой такой группы чекбоксов, и отправить их на сервер, хоть строкой, хоть как, не принципиально. Поэтому и решил загнать их в скрытый инпут и отправить.
Проблема у меня в том, что код
var checked = [];
$(':checkbox').on('click', function() {
var chbx = $(this);
var seq = chbx.parent().parent().attr('data-seq');
var sel_list_seq = chbx.parent().parent().children('.sel_seq_list');
if (seq == 1) {
if (chbx.is(':checked')) {
checked.push(chbx.val());
} else {
var index = checked.indexOf(chbx.val());
if (index != -1)
checked[index] = null;
checked = checked.filter(item => item != null);
}
sel_list_seq.val(checked);
console.log(JSON.stringify(checked));
}
});
делая все правильно со второго и последующих вопросов все варианты ответов загоняет в один массив checked, а нужно чтобы у каждого вопроса был свой массив.
Что я только не делал, чтобы решить вопрос, например собрал все вопросы, у которых дата атрибут data-seq=1 (то есть в этих вопросах важна последовательность ответа), потом собрал с них id и вот тут никак не получается создать массив с индексов по id вопроса, например checked['question_49']? checked['quesion_58']/ Или может есть другое изящное решение? Помогите мне пожалуйста.