给select赋值的一种方法

本文介绍了一种在网页更新时,将后台数据传递给前端并预设Select标签值的方法。通过设置隐藏元素保存值,并使用JavaScript进行选择项匹配。

做毕设遇到的问题,在update数据的时候,要先把原来的数据传递给前台,赋值给input等标签,但是啊,select标签没有value属性啊,所以在这里研究了一下,总结一个给select赋值的方法吧

<select id="slt" class="form-control" name="leaguerPower" value="${requestScope.leaguer.leaguerPower }" style="width:80%;height:65%">
  <option>管理员</option>
   <option>普通用户</option>
   <option>本科</option>
   <option>硕士研究生</option>
   <option>博士研究生</option>
   <option>教职工</option>
</select>

 先给select标签设置一个id,js中要用到

<span id="up" hidden="hidden">${requestScope.leaguer.leaguerPower}</span>

 添加一个隐藏的span标签,用来得到后台传过来的值(因为js中不能直接用EL表达式嘛),当然,你也可以用input什么的来获取后台传过来的值,设置隐藏就好,就是当一个“变量”来用嘛,然后在js中加下面的代码:

<script type="text/javascript">
    	$(document).ready(function(){
    		var x = document.getElementById("up").innerHTML;/* 如果你用的“变量”是input的话,这里就要写成.value了 */
    		$("#slt").val(x);/* 这句话设置select中value为x的项被选中,例如$("#slt").val(“本科”)就表示<option>本科</option>被选中*/
    	});
</script>

 到这里就实现完成了

不过我总觉得还是下面这样写要严谨一些

<select id="slt" class="form-control" name="leaguerPower" value="${requestScope.leaguer.leaguerPower }" style="width:80%;height:65%">
  <option value="管理员">管理员</option>
   <option value="普通用户">普通用户</option>
   <option value="本科">本科</option>
   <option value="硕士研究生">硕士研究生</option>
   <option value="博士研究生">博士研究生</option>
   <option value="教职工">教职工</option>
</select>

虽说之前那种写法我用着也没问题吧,哎呀不管了

PS:《いつも何度でも》巨好听啊,《千与千寻》里的歌

转载于:https://www.cnblogs.com/holiday2018/p/9057017.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值