thymeleaf th:if 判断空
时间: 2023-08-02 09:06:50 浏览: 505
可以使用Thymeleaf的 `th:if` 属性来判断一个对象是否为空。下面是一个示例:
```html
<div th:if="${user != null}">
<p>Welcome, <span th:text="${user.name}"></span>!</p>
</div>
```
在上面的示例中,我们使用 `th:if` 属性来判断 `user` 对象是否为空。如果不为空,则渲染 `div` 元素及其子元素;否则,不渲染任何内容。在 `div` 元素中,我们使用 `th:text` 属性来显示用户的名字。
除了判断对象是否为空,还可以使用 `th:if` 来判断表达式是否为真。例如:
```html
<div th:if="${user.age > 18}">
<p>You are old enough to vote!</p>
</div>
```
在上面的示例中,我们使用 `th:if` 属性来判断用户的年龄是否大于 18。如果为真,则渲染 `div` 元素及其子元素;否则,不渲染任何内容。在 `div` 元素中,我们显示一条消息,告诉用户他/她已经足够年龄参加投票。
相关问题
th:if condition 中获取input中的值
在 th:if 条件中获取 input 元素的值,可以通过 Thymeleaf 的表达式语法 ${...} 来实现。
例如,假设有一个表单输入框:
```html
<input type="text" th:name="inputName" />
```
要在 th:if 条件中使用这个输入框的值,可以这样写:
```html
<div th:if="${#strings.isNotEmpty(inputName.value)}">
输入框不为空
</div>
```
这个例子中,使用了 Thymeleaf 的内置工具类 #strings 来判断输入框的值是否为空。如果不为空,则显示一个 div 元素。
需要注意的是,Thymeleaf 表达式中的 inputName 与 th:name 属性值一致。同时,为了获取 input 元素的值,需要使用 .value 属性。
th:if="${currentProcess == null || currentProcess.userId != userId}" 加上这段判断 对thymeleaf html 中 对<input <textarea <input type="text" 进行不可选 不可编辑的控制 比如这段 <td colspan="1"><input type="text" id="drawPeople" name="drawPeople" th:value="${spotCheck.drawPeople}" class="form-control" placeholder="请输入点检人姓名" autocomplete="off"/> 这段进行修改。
可以在 `<input>` 标签上添加 `th:readonly` 属性来使其只读,或者添加 `th:disabled` 属性来使其不可编辑。可以根据条件判断是否添加这些属性,例如:
```
<td colspan="1">
<input type="text" id="drawPeople" name="drawPeople" th:value="${spotCheck.drawPeople}" class="form-control" placeholder="请输入点检人姓名" autocomplete="off"
th:if="${currentProcess == null || currentProcess.userId != userId}"
th:readonly="readonly"/>
</td>
```
这样,如果 `currentProcess` 为空或者其 `userId` 不等于 `userId`,则该输入框会变为只读状态,不可编辑。如果要完全禁用该输入框,可以将 `th:readonly` 改为 `th:disabled`。
阅读全文