У меня чертовски время с чем-то, что должно быть предельно простым. Я использую плагин Struts2 JQuery, и у меня есть <sj:select>
на моей странице. Он установлен в multiple
. У меня есть массив значений, которые я хочу предварительно выбрать, но ничего не задано. Если я дам ему один элемент в теге значений, этот единственный элемент будет выбран. Если я передаю ArrayList
из Integers
или Collection
из Integer
(все еще экземпляр ArrayList
) или строку с разделителями-запятыми («100,101,102») в значение, ничего не выбрано. Я пробовал передать простой массив целых чисел (Integer[]
), и это по крайней мере будет выбирать первый элемент в массиве, но это все. Все остальные, очевидно, отброшены. Я не могу понять, что я делаю неправильно, или что я могу сделать, чтобы сделать эту работу.Struts2 Jquery Multiple Select Value
<sj:select
href="%{myStrutsJSONAction}"
id="itemSelect"
formIds="editForm"
reloadTopics="reloadItem"
name="selectedString"
list="availableItems"
listKey="id"
listValue="description"
multiple="true"
cssClass="form-control"
value="selectedIds"
/>
Это было первоначально регулярным Struts2 выберите (<s:select>
) и работал прекрасно с ArrayList
из Integers
переданного значения тега. Я изменил версию JQuery, потому что мне нужно, чтобы данные перезагружались на основе значения отдельного списка.
reloadTopics
работает отлично, данные заселяются, а когда форма отправляется, все мои выборы корректно передаются обратно на сервер. Но при загрузке страницы ничего не выбрано.
Скважина смысл Struts2 JQuery плагин запутывает простую библиотеку JavaScript. Вы можете использовать библиотеку пользовательского интерфейса, поддерживающую плагин, с меньшей головной болью, чем плагин предлагает исправить, за исключением тех, кто пообещал делать веб-программирование, избегая при этом изучения JavaScript. – Quaternion
У меня нет проблем с внедрением javascript. Фактически, я уже сделал именно это и вручную достиг того же конечного результата. Но это похоже на грубое обходное решение, и я не вижу ничего, что указывает на то, что это ошибка в плагине. Я действительно хочу знать, где проблема. Я что-то не так с моей настройкой, или тег значения для multi-select struts-jquery просто не работает? Плагин был действительно утончен, но я никогда не сталкивался с чем-то, чего я не мог в конечном итоге выяснить. –
Использование этих тегов - это взломать ... Если использование JS выглядит как взломанный, перераспределение, вероятно, в порядке. JavaScript может быть очень читаемым и с точки зрения обслуживания, JS гораздо более доступен, чем эти теги. С точки зрения ценности время, потраченное на изучение любой библиотеки JS, время лучше потрачено. Ну, я сделал свою роль и сказал, что «так происходит безумие!» но если вы настаиваете на том, что на этой странице все выработано, хотя я четко указал, что я не поклонник, меня впечатляет захватывающая документация, поддерживающая его: http://struts.jgeppert.com/struts2-jquery-showcase /index.action – Quaternion