У меня есть множественный выбор:
<select name='strings' id="strings" multiple style="width:100px;">
<option value="Test">Test</option>
<option value="Prof">Prof</option>
<option value="Live">Live</option>
<option value="Off">Off</option>
<option value="On">On</option>
</select>
Я загружаю данные из своей базы данных. Тогда у меня есть такая строка:
var values="Test,Prof,Off";
Как я могу установить эти значения при множественном выборе? Уже пробовали изменить строку в массиве и поместить ее как значение в множестве, но не работает ...! Может кто-то помочь мне с этим? СПАСИБО!!!
javascript
jquery
multiple-select
Zwen2012
источник
источник
$('#strings').val(values.split(','))
. Без jQuery простой старый Javascript ŁukaszW.pldocument.getElementById('strings').value = ["Test", "Prof", "Off"]
также работает в однострочном режимев jQuery:
или в чистом JavaScript:
jQuery делает здесь значительную абстракцию.
источник
Просто предоставьте функции jQuery val массив значений:
И чтобы получить выбранные значения в том же формате:
источник
Решение на чистом JavaScript ES6
querySelectorAll
функцией и разделитеvalues
строку.Array#forEach
для перебора всех элементовvalues
массива.Array#find
чтобы найти вариант, соответствующий заданному значению.selected
атрибут наtrue
.Примечание :
Array#from
преобразует объект, подобный массиву, в массив, после чего вы можете использовать для негоArray.prototype
функции, такие как find или map .источник
В основном выполните,
values.split(',')
а затем переберите полученный массив и установите Select.источник
Решение на чистом JavaScript ES5
По какой-то причине вы не используете ни jQuery, ни ES6? Это может вам помочь:
источник
источник
это ошибка в некоторых ответах на замену |
это исправление правильное, но | В итоге должно получиться так \ |
источник