Как я могу получить значения флажка из struts2 checkbox в displaytag в класс action
-
18-09-2019 - |
Вопрос
Я работаю над распорки 2 приложение, в котором я использую отображаемый тег для поддержки разбивки на страницы.
Теперь мне нужен флажок для каждой строки в таблице, для чего я это делаю.
<display:table name="countryList" export="true" class="table" id="countryList" pagesize="${selectedPageSize}" decorator="org.displaytag.decorator.TotalTableDecorator" >
<display:column property="id" title="ID" paramId="id" />
<display:column property="name" title="Name" sortable="true"/>
<display:column title="Delete All">
<s:checkbox id="check" name="check" fieldValue="%{#attr.countryList.id}" theme="simple"/>
</display:column>
</display:table>
<s:submit action="deleteall" value="DeleteSelected" />
пока здесь все работает нормально.теперь я хочу удалить все страны, которые отмечены с помощью флажка.
для этого мне нужны идентификаторы стран, которые проверяются . для этого я должен принять значения в массиве.
Проблема в том, как я могу отправить значения из jsp, а затем получить их в классе action
Решение
Если вы добавите строку [] к своему действию с таким же именем, как у вашего флажка (ов), и предоставите ее с помощью средств доступа (getters / setters), struts 2 должен автоматически заполнить ее.
Другие советы
Вот как бы я это сделал.
вместо 'id' для всех столбцов идентификаторов добавьте порядковый номер, чтобы каждый идентификатор имел уникальное имя, например 'id1', 'id2' и т. Д
создайте перехватчик, который собирает значения параметров с префиксом 'id'
настройте свое действие на использование перехватчика
Хотя моя стойка фу заржавела.Вероятно, есть способ получше.