Я пытаюсь построить массив / объект на основе пользовательского ввода в форму, которая имеет radio
s, checkbox
s с radio
s, text
с radio
s и select
s.Я хочу, чтобы окончательный массив / объект был объединен так, чтобы активированные элементы формы с повторяющимися именами были объединены в один объект:
data = {
name0 = (value0,value4), // checkbox
name1 = (value2), // radio
name2 = (value5), // select>option
name4 = (''), // non-response
name5 = (NULL) // form element was disabled/hidden
}
Javascript выглядит довольно разборчиво, поэтому у меня возникли некоторые проблемы.Я разбил его на 3 части (Arr1, Arr2, Arr3), но похоже, что первый бит сохраняет только последний элемент формы, а второй бит останавливается для каждого имени после его обнаружения.
Кодв JSfiddle: http://jsfiddle.net/jshado1/5Y7sn/12/
EDIT : я хочу, чтобы конечный массив был похож на пример в скрипте: (со всеми не проверенными альфами, бета = 1 проверено, бета = 2 проверено, а дельта = 3 выбрано)
data : {
{ 'alpha' : '' },
{ 'beta' : '1','2' },
{ 'delta' : '3' },
{ 'continue' : 'continue' }
}
(со временем я отфильтрую [продолжить], используя более точный селектор jQuery, и оставлю кнопку вне div)