Выберите строку с тимелистом и th: каждый - PullRequest
0 голосов
/ 14 января 2019

Я использую тимилиф для отображения списка объектов, например:

<tr th:each="Reports : ${report}">
<td><span th:text="${Reports.id}">Id</span> </td>
<td><span th:text="${Reports.description}">Description</span></td>
<td><span th:text="${Reports.entity}">Entity</span></td>
<td><span th:text="${Reports.long}">Long</span></td>
<td><span th:text="${Reports.lat}">Lat</span></td>
<td><span th:text="${Reports.type}">Type</span></td>
<td><span th:text="${Reports.solved}">Solved</span></td>

<div class="btn-group"> 
<button type="button" class="btn btn-secondary btn-sm dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Azione</button>
<div class="dropdown-menu"> 
 <a class="dropdown-item" href="#">Solved</a> <div class="dropdown-divider"></div> 
<a href="" class="dropdown-item">Not Solved</a> 
</div> 
</div> 
</td>
</tr>

и это работает, конечно. Теперь мне нужно изменить значение «решено »на значение, взятое с кнопки, присутствующей в каждой строке, поэтому я бы взял только идентификатор (который является моим первичным ключом) и значение кнопки для отправки по почте на другой URL. Как мне этого добиться?

Ответы [ 3 ]

0 голосов
/ 15 января 2019
    <form th:action="@{'/posturl/'}" method="post">    
 <tr th:each="Reports : ${report}">
<td><span th:text="${Reports.id}" th:value="${Reports.id}">Id</span> </td>
<td><span th:text="${Reports.description}" th:value="${Reports.id}">Description</span></td>
<td><span th:text="${Reports.entity}" th:value="${Reports.id}">Entity</span></td>
<td><span th:text="${Reports.long}" th:value="${Reports.id}">Long</span></td>
<td><span th:text="${Reports.lat}" th:value="${Reports.id}">Lat</span></td>
<td><span th:text="${Reports.type}" th:value="${Reports.id}">Type</span></td>
<td><span th:text="${Reports.solved}" th:value="${Reports.id}">Solved</span></td>

и если вы хотите добавить кнопку в каждую строку, просто введите код кнопки в каждом тд и дайте URL как-

<button class="btn btn-secondary href="/someurl/"+${Reports.id}>Solved</button>
0 голосов
/ 15 января 2019

Вы можете использовать Tabledit.js .

 <script th:src="@{[javascript_folder_path]/jquery.tabledit.js}"></script>
 <script type="text/javascript">
 $('#tableEdit').Tabledit({
    url: "your_controller", 
    //saveButton: false,
    columns: {
        //identifier is used as a unique id for passing your id for db operation
        identifier: [0, 'id'],
        //Only include those fields that you want to make editable here.
        editable: [[0, 'id'], [1, 'description'], [2, 'entity'], [3, 'long'], [4, 'lat'], [5, 'type'], [6, 'solved']]

    }
});
$('#tableEdit').editableTableWidget().numericInputExample().find('td:first').focus();
$('#textAreaEditor').editableTableWidget({editor: $('<textarea>')});
window.prettyPrint && prettyPrint();
</script>
0 голосов
/ 14 января 2019

При отправке по POST вам необходимо создать новый объект и добавить два значения к новым объектам.

Создайте HTML-форму с th: action, установленным в качестве конечной точки POST, и добавьте th: object, который будет принимать два значения. Затем используйте два скрытых поля ввода и установите их значения, используя th: значение, равное значению, которое вы хотите отправить.

Надеюсь, это имеет смысл, я могу добавить пример кодирования позже, если никто больше не ответит / не понадобится дополнительная помощь позже. В настоящее время только на мобильном телефоне.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...