关于使用三元运算符来判断下拉框选项是否选中的总结

我们经常会从后台传递一组数据,这一组数据需要放到一个select下拉框中,并且要判断是否要选中其中某一个值

错误的做法是

<select >

  <option selected="${value.week==1?‘selected‘ :‘‘}>周一</option>"

  <option selected="${value.week==2?‘selected‘ :‘‘}>周二</option>"

  <option selected="${value.week==3?‘selected‘ :‘‘}>周三</option>"

  <option selected="${value.week==4?‘selected‘ :‘‘}>周四</option>"

  <option selected="${value.week==5?‘selected‘ :‘‘}>周五</option>"

</select>

通常我们以为经过EL的三元运算符的运算,得到的结果是这样的

<select >

  <option selected=‘ ‘>周一</option>"

  <option selected=‘ ‘>周二</option>"

  <option selected=‘selected‘>周三</option>"

  <option selected=‘ ‘>周四</option>"

  <option selected=‘ ‘>周五</option>"

</select>

而实际编译后也确实生成的是这样,那为什么周三还是不会选中呢???哈哈

经过反复测验后得出一个结论就是

如果在一个下拉框中,有某个选项将要被选中,那么其他选项的select属性就不能有值

当我们在MyEclipse中写上这样一段

系统会有立马警告

而部署后2选项也同样不会被选中,也证明了我们的结论

那么要怎样用三元运算符来设置下拉框的选项是否选中呢?

如图

也就是

<select name="week" style="display: none" class="updateInfo">
                    <option>-请选择-</option>
                    <option ${courseMap.week == 0 ? "selected= ‘selected‘" : " "} value="0"> &nbsp;周 日&nbsp;</option>
                    <option ${courseMap.week == 1 ? "selected= ‘selected‘" : " "} value="1">&nbsp;星期一&nbsp;</option>
                    <option ${courseMap.week == 2 ? "selected= ‘selected‘" : " "} value="2">&nbsp;星期二&nbsp;</option>
                    <option ${courseMap.week == 3 ? "selected= ‘selected‘" : " "} value="3">&nbsp;星期三&nbsp;</option>
                    <option ${courseMap.week == 4 ? "selected= ‘selected‘" : " "} value="4">&nbsp;星期四&nbsp;</option>
                    <option ${courseMap.week == 5 ? "selected= ‘selected‘" : " "} value="5">&nbsp;星期五&nbsp;</option>
                    <option ${courseMap.week == 6 ? "selected= ‘selected‘" : " "} value="6">&nbsp;星期六&nbsp;</option>
</select>

如果条件成立才会有selected=‘selected‘不然只是一个空格,不知道您看懂了么???

琢磨了半天才想明白,作为一个笔记吧!

时间: 2024-08-22 07:04:59

关于使用三元运算符来判断下拉框选项是否选中的总结的相关文章

ComboBox连接数据库、显示下拉框选项

?本文从http://blog.csdn.net/susidian/article/details/7027007处学习得来. ?如何将combobox控件绑定数据库,并在下拉框中显示从数据库中查找得到的数据.如何在上一个combobox框中筛选下一个combobox中可以选择的的选项. 贴出代码: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usi

crm使用soap插入下拉框选项

//C# 代码: //InsertOptionValueRequest request = new InsertOptionValueRequest(); //request.OptionSetName = "new_year"; //request.Label = new Label("2008年", languageCode); //request.Value = 2008; //InsertOptionValueResponse response = (Ins

crm使用soap删除下拉框选项

//C# 代码: //DeleteOptionValueRequest request = new DeleteOptionValueRequest(); //request.OptionSetName = "new_year"; //request.Value = 2008; //DeleteOptionValueResponse response = (DeleteOptionValueResponse)service.Execute(request); //js例子 functi

UI自动化之特殊处理二(弹框\下拉框\选项\文件上传)

弹框\下拉框\选项\文件上传也是一些比较特殊的操作 目录 1.弹框 2.下拉框 3.选项 4.文件上传 1.弹框 弹框有三种形式,value为alert.confirm.prompt三种的弹框,第一个仅可点击确认,第二个可点击取消和确认,第三个可以输入内容再点击取消或者确认 alert:仅需要定位到alert上,然后再确认 m= driver.switch_to_alert() m.accept() confirm:定位到alert,点击取消或者确认 m= driver.switch_to_al

selenium (三) 下拉框选项操作

对下拉框操作的方式其实有多种,可以先通过find_elements_by_xpath()获取到下拉框中的所有选项列表,然后在通过list元素进行click()来选择选项(这是我最初实现对下拉框操作的方式),也可以使用selenium自带的方法实现下拉框选项的操作.两者其实差不多,不过,个人觉得还是用find_elements_by_xpath()方式更具有扩展性.因为有些下拉框中的选项中,有可选和不可选的选项时,find_elements_by_xpath()可以通过元素属性过滤掉不可选的选项,

jq select change下拉框选项变化判断选中值,添加(attr)或移除(removeAttr)一个或多个属性

select change下拉框选项变化判断选中值,添加(attr)或移除(removeAttr)一个或多个属性 $("#IsRecommend").change(function () { var isCheck = $(this).children('option:selected').val(); if (isCheck == "true") { $("#CategoryId").css("display", "

下拉框&lt;select&gt;设置选中项的一个问题

基于jQuery,有两种方式设置下拉 1.$("select").val(); 2.$("option:eq(1)").attr("selected","selected"); 方法2有个问题就是只能设置一次下拉框,重复调用设置失效 <script> $(function(){ }); function sltOpt(){ $("select").val(1); } function sltOp

comboTagsTree的下拉框控件 选中

//编辑的时候 点击默认下拉框中的值选中 每次选中一个将原本的替换掉 只能选中一个分组if (groupId != "") { if(updateGroup.length!=undefined&&updateGroup.length!=""&&updateGroup.length!=null){ for (var j = 0; j < updateGroup.length; j++) { if (groupId == updat

JavaScript操作select下拉框选项移动

运行结果: 源代码: 1 <!DOCTYPE html> 2 <html lang="zh"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>选项移动</title> 6 </head> 7 <body> 8 <table width="285" height="169" border=