form表单中的一个下拉列表控件的代码如下

             <select name="taskname" id="taskname" class="select01">
<option value="">-任务类型-</option>
<logic:notEmpty name="tasknamelist">
<logic:iterate id="task" name="tasknamelist">
<logic:equal name="task" value="${taskname}">
<option value="<bean:write name="task" />" selected="selected"><bean:write name="task" /></option>
</logic:equal>
<logic:notEqual name="task" value="${taskname}">
<option value="<bean:write name="task" />"><bean:write name="task" /></option>
</logic:notEqual>
</logic:iterate>
</logic:notEmpty>
</select>

以上这段代码可以实现给下拉列表动态赋值,并且回显的功能,但是标签中的一些属性值设置经常搞混,需要注意。

1.<logic:notEmpty name="tasknamelist"> 和 <logic:iterate id="task" name="tasknamelist">  通过name取值,这说明在代码中一定有如下的类似代码:(向request等域中赋值)

request.setAttribute("tasknamelist", tasknamelist);

2.<logic:equal name="task" value="${taskname}"> Struts标签中不能嵌套,所以如果此处value值是动态的,通过EL表达式来获取,对应的在代码中一定有类似如下代码:(向request等域中赋值)

request.setAttribute("taskname", tasknamelist);

在刚开始加载页面的时候此处taskname为“”空,后期用于和tasknamelist中的值做比较,用于回显。

3.<option value="<bean:write name="task" />" selected="selected"><bean:write name="task" /></option>

< bean:write name="task">  查阅资料,都表示在代码中一定会有  request.setAttribute("task", task); 这种类似的代码。但是我在项目中发现确实没有这种代码?那么<bean:write name="task">是如何取值的呢?

以为此处< bean:write name="task">和<logic:iterate id="task" name="tasknamelist"> 一同使用,所以此处的规则是 :标签中的name属性要跟logic:iterator中的id属性对应上.

(<logic:iterator标签会把name属性值为list的集合里的bean逐一取出来,每取出来一个,就把他存到名为id属性的值的pageContext范围内)

 

最新文章

  1. SQL 中 EXISTS 与 NOT EXISTS
  2. Fibonacci(斐波那契数列)的最佳实践方式(JavaScript)
  3. Thinkphp空操作空模块
  4. 《IT蓝豹》完整阅读软件客户端app
  5. JS实现设为首页与加入收藏
  6. NVelocity 表格行奇偶样式变换
  7. UBUNTU12.4 安装磊科无线网卡驱动
  8. ANDROID_MARS学习笔记_S03_008_GOOGLEMAP2
  9. jQuery开始之旅
  10. jfreechart环形图完美实现
  11. CalendarHelper日期计算工具,各种日期的获取和计算
  12. Node.js~在linux上的部署
  13. 第八章 关于SQL查询出错的一些问题
  14. python怎么实现数组增加一行或多行
  15. C语言——第0次作业(二)
  16. build.gradle文件的注释
  17. rabbitMQ 3.6.15生产环境
  18. 最近公共祖先 LCA 倍增算法
  19. 写一个简单的JQ插件(例子)
  20. Win7或Win8上安装VS2015报&ldquo;安装包丢失或损坏&rdquo;问题的解决办法

热门文章

  1. 【NIFI】 Apache NiFI 授权配置
  2. eclipse中修改maven本地仓库方式
  3. 微信小程序开发之搞懂flex布局3——Flex Item
  4. springIOplatform
  5. LOJ-10109(欧拉回路)
  6. bootstrap的引用和注意事项
  7. 解决:Adobe Acrobat Pro中设置背景颜色后,出现白色条纹
  8. mysql几种中间件对比
  9. PID control
  10. uc/osⅡ/Ⅲ