1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > thymeleaf(模板) select(下拉框) 默认选中效果(回选效果)

thymeleaf(模板) select(下拉框) 默认选中效果(回选效果)

时间:2020-06-04 23:43:36

相关推荐

thymeleaf(模板) select(下拉框) 默认选中效果(回选效果)

最近在用老的开发方式+新技术写代码重新熟悉,遇到此问题,网上查阅了各种办法,都不见效果,后通过查阅(thymeleaf)官方API,自己摸索尝试,最终找到如下解决方案,代码经实打实测试,可呈现期望效果,分享出来供各位程序员伙伴们参考:

<select class="combox" name="userSex"><option th:selected="${{param.userSex}} eq ''" value="">所有性别</option><option th:selected="${{param.userSex}} eq '1'" value="1">男</option><option th:selected="${{param.userSex}} eq '0'" value="0">女</option></select>

代码段说明:

一、我的编码环境

代码工具:intellij IDEA .1

游览器:Google Chrome(谷歌)

前端:thymeleaf、Jquery、DWZ

后端框架:SpringBoot,SpringMVC,Mybatis,Maven

服务器:tomcat

JDK版本:JDK16

二、下拉框标签

<select><option></option></select>

html的下拉框标签写法,这个不多说;

三、下拉框选项内容

<option th:selected="${{param.userSex}} eq '1'" value="1">男</option>

th:属性名称:此为thymeleaf的th标签写法,此类标签都能按相关格式写条件判断表达式,不一定要使用th:if才能判断;

${{}}:thymeleaf表达式的写法,一般取值写成${}就行了,这里有写两层大括号,中间这一对大括号的意义为强制转换类型;

param:页面作用域对象,自带的,不用另外声明,直接使用即可;userSex为select(下拉框)的(name)属性值;param.userSex这样的写法可以取到select(下拉框)当前选中的值;param.userSex可换成从后台传递过来的对象或者属性取值(我这里写的是页面取值的方式);

eq:此为thymeleaf代替特殊符号的关键字,因此代码中不支持直接使用“==”符号,此处用eq关键字来代替,其功效就相当于“==”符号;

四、为什么要使用强制转换

经测试,如下代码无效,具体原因暂为探究;

<!-- 预设当下拉框选中的值为:'1' --><input type="text" th:value="${param.userSex} eq '1'"/><!-- 页面展示结果为:false --><input type="text" th:value="${param.userSex} eq 1"/><!-- 页面展示结果为:false --><input type="text" th:value="${param.userSex=='1'}"/><!-- 页面展示结果为:false --><input type="text" th:value="${param.userSex==1}"/><!-- 页面展示结果为:false --><!-- 试了很多写法....都没出效果,不一一列举了 -->

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。