2016-12-28 4 views
0

У меня есть два маленьких полей выбора, как это:переключатель множественный без выбирают

enter image description here

Я добавил небольшую JS-функциональность и присоединенные их к кнопкам, так что я могу двигать влево пункты вправо который работает отлично.

Однако, переведя их в правый квадрат (который в моем случае ящик с элементами, которые я хочу вставить в БД впоследствии), они выбираются. Нажатие на один из них отменяет выбор другого. Я хочу, чтобы обе эти опции (которые генерируются динамически) были в моем PHP-файле.

enter image description here

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

Мой JavaScript для передачи заключается в следующем:

function move(leftValue, rightValue) { 
    var leftSelect = document.forms["myedit"].elements[leftValue]; 
    var rightSelect = document.forms["myedit"].elements[rightValue]; 
    if (leftSelect.selectedIndex == -1) { 
     window.alert("[{oxmultilang ident='TROEXTENDEDNEWS_SELECT_LEFT_FIRST'}]"); 
    } else { 
     var option = leftSelect.options[leftSelect.selectedIndex]; 
     rightSelect.appendChild(option); 
    } 
} 

довольно короткий. переместите указатель слева на правый индекс.

Это мой HTML (левое поле):

<select class="editinput" name="editval[cats_available][]" multiple>       
    <option value="abc">abc</option> 
    <option value="def">def</option> 
</selected> 

Это вот как я отправить форму:

<input type="submit" name="save_new_cat" value="[{ oxmultilang ident='TROEXTENDEDNEWS_CREATE_NEW'}]" onClick="selectAllOptions('editval[cats_selected][]');document.myedit.fnc.value='createCategory'"> 

Мой вопрос: Что бы хороший подход, чтобы иметь элементы в после запроса, которые находятся в правильном поле? Может быть, перед отправкой кода небольшая JS-функция, которая выбирает все элементы в правом поле? С помощью скрытого поля после нажатия кнопки «Переместить вправо»? Я немного застрял здесь.

Нет доступных jQuery.

ответ

1

Вы уже пробовали решения на select all options in html select dynamically, так как ваша проблема кажется похожей на вопрос?

Пожалуйста, ответьте на этот вопрос модератором комментария, потому что он один.

+0

Я пробовал это раньше, но, возможно, из-за использования [] в названии или по какой-либо причине он не работает по какой-либо причине:/ – DasSaffe

+0

Похоже, что из-за имени [] имя передается как массив? – Makaze

+0

welp, nevermind Я думаю ... Если бы имя в кавычках вместо использования было как объект. Это решило. Спасибо :) – DasSaffe

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