Как получить значение и текст из html select с помощью thymeleaf - PullRequest
0 голосов
/ 01 февраля 2019

Учитывая следующее POJO, которое имеет только два поля:

Сущность:

  • id
  • name

У меня естьформы со следующим выбором:

<select required="required" name="name" id="myId">
    <option th:disabled="disabled" selected="true" value="">Choose Value</option>
    <option th:each="element : ${elements}"
            th:value="${element.id}"
            th:text="${element.name}">
    </option>
</select>

Я пытаюсь заполнить поля сущности, чтобы поле id заполнялось через th: value (которое будет значением выбранного element.id) иПоле name заполняется через th: text (который будет значением выбранного element.name).

Насколько я понимаю (и чего я достиг), я могу заполнить только одно поле с помощью html-тега выбора (тот, который я установил в теге выбора имени).Любая идея о том, как я могу получить значения th: text и th: value, сопоставленные в моей сущности, используя thymeleaf?

Ответы [ 2 ]

0 голосов
/ 01 февраля 2019

Есть несколько способов сделать это: -

1.) После получения value на вашем контроллере, вы всегда можете perform a select query from your Database based on the value received on your controller, чтобы получить текст-значение

2.) Вы можете использовать элемент hidden html вместе с вашим html-option, а затем использовать javascript для отправки формы и получения обоих значений.

0 голосов
/ 01 февраля 2019

Что касается стандартных процедур, вы не можете получить оба значения одновременно.Однако вы можете отправить поле значения как объединенную версию обоих значений.Вы можете достичь этого следующим образом:

<option th:each="element : ${elements}"
        th:value="${element.id} + '~' + ${element.name}"
        th:text="${element.name}">
</option>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...