Я пытаюсь сохранить массив в определенном порядке, и я узнал о функции сплайсинга для вставки в определенное местоположение индекса, но, похоже, он не делает правильных действий.Сохранение массива JavaScript в порядке
Вот скрипку того, что я до сих пор: http://jsfiddle.net/drumichael/7r2pV/277/
В разделе 1, вы можете выбрать один или многие из вариантов, однако «Первый» всегда должен быть первым, «второй» 2-й, и «Четвертый "после обоих из них. Если вы выбрали только «First» & «Четвертый», они должны быть в этом порядке, независимо от того, в каком порядке вы отметили поля.
В разделе 2 вы можете выбрать только один из вариантов A, B, & C ... и этот параметр всегда должен находиться в 3-й позиции массива (если вы не выбрали ЛЮБЫЕ элементы из раздела 1 Конечно, это было бы само по себе внутри массива).
Честно говоря, я не уверен, куда идти отсюда. Я пробовал:
var array_position = $(this).attr('id');
var messagePart = $(this).attr('data-message');
message.splice(array_position, 0, messagePart);
Но они все еще не в порядке.
'сообщение [array_position] = messagePart;' вставить в правый слот, который делает пустые слоты ... потом перед тем как вы присоединитесь(): 'message.filter (Boolean) .join (", ")' для удаления пустых слотов. вам даже не нужно возиться с splice() ... – dandavis
Если вы выберете все три варианта в Разделе 1, не будет ли вариант в разделе 2 находиться в четвертой позиции? Вы имели в виду, что параметр раздела 2 всегда последний?Хорошо, я вижу, Раздел 2 - это недостающая третья позиция раздела 1. – zer00ne