Я пытаюсь создать веб-страницу с историей того, что я делаю, используя Struts 2. После отправки в мою таблицу истории добавляется строка, содержащая параметры предыдущей страницы.
Что я хочуразрешить пользователю удалять записи из этой таблицы, проверив одну или несколько строк и нажав кнопку «Удалить выбранное».
Изменить: таблица создается динамически с объектом списка, поэтому я не хочу удалятьhtml строк, но мне нужно удалить запись из списка.
Таблица создается следующим образом:
<table>
<tr>
<th></th>
...
</tr>
<s:iterator value="myList">
<tr>
<td>
<input type="checkbox" />
</td>
<td>
<!-- other stuff -->
</td>
</tr>
</s:iterator>
</table>
Таким образом, используя то, что я знаю, я могу перебирать флажкитолько используя Javascript.
Чтобы получить номер строки, я использую Javascript
function checkRows() {
var rowsIndex;
var rows = document.getElementById('historyTable').getElementsByTagName('tbody')[0].getElementsByTagName('tr');
for (i = 1; i < rows.length; i++) {
if(rows[i].getElementsByTagName('td')[0].getElementsByTagName('input')[0].checked) {
// here "i" is the row number if checked
}
}
}
Это кнопка
<s:url id="urlRemove" action="myAction">
<s:param name="rowsIndex">
<!-- List of index of selected rows -->
</s:param>
</s:url>
<s:a href="%{urlRemove}">
<input type="button" value="Remove Selected" />
</s:a>
Я знаю, что после отправки того, что было изменено с помощью Javascriptпотерян, поэтому я думаю, что мне нужно заполнить список в действии проверенными номерами строк из Javascript или назначить <s:param name="rowsIndex">
свойство, но мне все еще приходится перебирать строки с помощью javascript.
Любая помощь приветствуется, спасибо.