У меня есть требование, в котором мне нужно идентифицировать тип ввода формы на основе значения компонента.
Элементный компонент имеет имя свойства, метку, тип, обязательный.
Если значение типа «text», на странице должно отображаться <input type="text">
.
Если type = «File», на странице должно отображаться <input type="file">
.
My Bean:
public class Element {
private String name;
private String label;
private String type;
private String mandatory;
private String value;
}
Config JSON:
{"input": [
{
"name": "file1",
"label": "File 1",
"type": "File",
"mandatory": "true"
},
{
"name": "Indicator",
"label": "Indicator",
"type": "text",
"mandatory": "true"
}
]}
Контроллер прочитает JSON и заполнит список объектов-элементов.
В пользовательском интерфейсе, когда я пытаюсь добавить приведенный ниже код, он не генерируеттип ввода, как и ожидалось.
Я могу видеть все значения, когда использую только приведенный ниже код:
<div th:each="element: ${accelerator_input}">
<p th:text="${element.label}" />
Но когда я добавляю тип ввода в мой код, он нене работает.
<div th:each="element: ${accelerator_input}">
<p th:text="${element.label}" />
<input type="${element.type}" name=${element.name}
th:field="${element.value}" />
</div>
Как я могу решить эту проблему?