Показать сообщение отдельно
  #11 (permalink)  
Старый 11.02.2018, 21:37
Профессор
Отправить личное сообщение для Batyabest Посмотреть профиль Найти все сообщения от Batyabest
 
Регистрация: 14.09.2013
Сообщений: 252

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']/ Или может есть другое изящное решение? Помогите мне пожалуйста.
Ответить с цитированием