Есть ли способ опубликовать все значения в множественном списке, а не только выбранные? - PullRequest
6 голосов
/ 25 января 2012

У меня есть два списка MultiSelect (AllProductList и SelectedProductList), AllProductList содержит все продукты для определенной категории, и я добавляю / клонирую опции из AllProductList в SelectedProductList с помощью JQuery.

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

Я обернул теги формы только в SelectedProductList, и теперь мне нужен способ публикации все значения параметров в нем, независимо от того, выбран ли он или нет.

Ответы [ 2 ]

2 голосов
/ 25 января 2012

вы могли бы написать некоторый javascript, который заполняет скрытый элемент формы всеми значениями из select, что-то вроде ниже, и на стороне сервера просто используйте explode (",", $ _ POST ["allValues"]), чтобы получить все параметры

<script>
var hiddenValues = "";
$(document).ready(function(){
   $("#mySelect option").each(function(){
       hiddenValues = $(this).val() + ",";
   })//end each

   $("#myForm").append("<input type='hidden' name='allValues' value='"+hiddenValues+"'>")
})
</script>

очевидно, что вышеприведенное имеет зависимость от jQuery, а ваша форма имеет идентификатор myForm, и что у вашей множественной выборки есть идентификатор mySelect:)

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

ПРИМЕЧАНИЕ2: будьте осторожны, если значения содержат запятые, так как это сделает недействительным ваш ввод (если он не экранирован каким-либо образом или не используется какой-либо другой разделитель)

1 голос
/ 03 июня 2014

Я не могу комментировать, так что, наверное, мне нужно ответить ???

Богдан нуждается в ответе + =

hiddenValues += $(this).val() + ",";

в противном случае вы получите только 1 ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...