2010-08-27 4 views
0

У меня есть список разных элементов в списке нескольких списков, и я хочу автоматически добавлять в форму, которую представляет пользователь.Автоматическое добавление элементов из списка выбора

HTML из категории множественного выбора списка:

<select name="category[]" size="4" multiple="multiple" id="group"> 
    <option value='7'>Faculty</option> 
    <option value='8'>Staff</option> 
    <option value='6'>Students</option> 
</select> 

Я хочу сделать что-то вроде:

<input type="hidden" name="category[7,8]" /> 

Это будет автоматически назначать представление в соответствующем выбранном списке элементы внутри категории [], без них, когда-либо видящих это.

Это хранится в базе данных, поэтому мне нужно выполнить его таким образом.

Я знаю, что это не работает, но это должно дать вам представление о том, что я пытаюсь сделать.

ответ

1

Удаленный элемент управления с несколькими выборами просто передается как имеющий несколько значений , Например, если вы выбрали «факультет» и «Персонал» в списке, что получает представлено что-то вроде:

category[]=7&category[]=8

Вы можете повторить это (по крайней мере, в Firefox, не проверял в другом месте) с двумя скрытые входы:

<input name="category[]" value="7" type="hidden"/> 
<input name="category[]" value="8" type="hidden"/> 
0

Я считаю, что это может быть выполнено с использованием библиотеки Javascript (например, jQuery) для обработки изменений в параметрах и добавления/обновления элементов в скрытом поле. Затем вы также можете использовать Ajax для обновления базы данных с выбором, когда это необходимо.

Ваши конкретные требования могут не учитывать вышеизложенное. Некоторая дополнительная информация была бы полезной для тех, кто просматривал такие, как бэкэнд, который вы используете (php, asp.net, или если это просто статический html), и если вы в настоящее время используете javascript (или библиотеку), чтобы помочь вам в любом другом задания.

Я попробую проверить обновления, чтобы узнать, могу ли я иметь более конкретную помощь. (Примечание: я думаю, что у меня слишком низкая репутация, чтобы иметь возможность опубликовать его в качестве комментария на данный момент, поэтому должен был сделать ответ вместо этого.)

Смежные вопросы