Struts2的标签库中,有一个出场频度很高的逻辑标签---IF标签
<s:if>其实很简单, 就两个参数,常用的就一个"test"
但是, 要写一个合法test表达式,却是让我觉得很麻烦的事.( 经常写错)
test里面写的表达式经常要结合OGNL使用的, 例如:
<s:set name="name" value="<%= "'" + request.getParameter("name") + "'" %>" />
<s:if test="#name == 'Max'">
Max's file here
</s:if>
<s:elseif test="#name == 'Scott'">
Scott's file here
</s:elseif>
<s:else>
Other's file here
</s:else>
以上都是基本使用方式.
2.关于test表达式的flag右值
程序里经常有需要判断一个标志来控制页面元素的显示, 而这个传到页面的标志又是String型的"0"和"1", 表达式该怎么写?
<s:if test="#flag == '1">
display some info
</s:if>
你认为像上面这种写法OK吗? 自己试试吧.
正确的写法如下例:
<s:set name="pf" value="#attr.orderlist.paidflag" ></s:set>
<s:if test="#attr.orderlist.paidflag == \"1\"">
<span style="color: #CC0000;">
<STRONG><s:property value="%{'已付款'}" /></STRONG>
</span>
</s:if>
<s:else>
<span style="color: #00CC00;">
<STRONG><s:property value="%{'未付款'}" /></STRONG>
</span>
</s:else>
就是这种写法 \"1\" 使用转义字符, 当然这个例子的OGNL复杂了点,因为这段代码所处的环境的关系.但重点是这种写法!
struts2标签<s:if>的小问题
struts2的标签<s:if> 谈不上BUG 是他做的不如意的地方,最近项目中遇到了多次,相信很多人会遇到当条件判断时候:
<s:if test="tnature.b72 =='y' ">是</s:if> 当数据库字段b72 为char 并且长度为1时候 上面的写法是判断不出来的,这个时候需要做下处理发现2中处理方法
方法一:
<s:if test=' tnature.b72 =="y" '>是</s:if> 条件判断 外面单号'' 比较字符用双引号""
方法二:
<s:if test=" tnature.b72 ==\"y\" "></s:if> 比较字符用 \转义一下
个人签名
-------------------------------------
图盾 淘宝保护 保护图片 图片防盗
分享到:
相关推荐
`<s:if>` 和 `<s:else>` 标签提供了条件逻辑,允许在JSP页面上进行条件判断。 7. **Choice标签** Choice标签包括`<s:select>`(下拉列表)、`<s:radio>`(单选按钮)和`<s:checkbox>`(复选框),用于创建HTML...
总的来说,Struts2标签和API文档为开发者提供了一种简洁、高效的方式来处理用户界面和业务逻辑的交互,是开发Java Web应用的重要工具。通过深入学习和熟练掌握,可以显著提升开发效率和代码质量。
在“struts标签.txt”文件中,可能包含了更多关于Struts标签的详细用法和示例。这些标签能够简化JSP页面的编写,提高开发效率,使得业务逻辑和视图层的分离更加清晰。通过学习和理解这些标签,开发者可以更好地掌握...
1. **核心标签(Core Tags)**:这是最基本的标签集,包括显示和控制逻辑的标签,如`<s:property>`用于显示字段值,`<s:if>`和`<s:else>`进行条件判断,以及`<s:iterator>`用于遍历集合。 2. **表单标签(Form Tags...
Struts2标签是Java Web开发框架Struts2中的一部分,它提供了一种简化JSP页面编写的方式,使得开发者可以通过XML语法来替代繁琐的Java脚本和JSP动作元素。Struts2标签库大大提升了代码的可读性和维护性,使得业务逻辑...
### Struts2 `<s:if>` 标签使用详解 #### 概述 Struts2 是一款基于 Java 的企业级 Web 应用框架,它利用了 MVC(Model-View-Controller)架构模式来帮助开发者构建可扩展、易于维护的 Web 应用程序。在 Struts2 中...
Struts2标签库是专为Struts2框架设计的一组JSP标签,旨在简化视图层的开发,提高代码的可读性和维护性。这些标签分为UI标签和非UI标签,分别用于生成HTML元素和处理数据访问及逻辑控制。通过使用标签库,开发者可以...
Struts2标签库是Java Web开发中的一个强大工具,它为开发者提供了丰富的UI组件和控制逻辑,极大地简化了视图层的代码编写。Struts2框架的标签库基于OGNL(Object-Graph Navigation Language)表达式语言,使得在JSP...
Struts2提供了丰富的标签库,这些标签使得开发者能够在JSP页面中方便地实现业务逻辑和控制流程。例如: - `s:property`:用于显示模型对象的属性值。 - `s:form`:创建HTML表单,与Struts2的动作类绑定,提供了...
通过实例,详细解析了`if/elseif/else`、`iterator`以及`i18n`标签的使用方法,旨在帮助开发者更深入地理解和运用Struts2的标签功能。 ### 非UI标签详解 #### if/elseif/else标签 **描述**:用于执行基本的条件...
Struts2是一个强大的MVC框架,它提供了丰富的标签库,使得开发者在编写JSP页面时能够更加方便地处理业务逻辑和展示数据。本篇文章主要关注Struts2中的常用标签,这些标签大大简化了Web开发中的一些常见任务。 首先...
Struts2标签库是开发Java Web应用程序的重要工具,它提供了丰富的UI组件和逻辑控制标签,大大简化了视图层的编码工作。这个“Struts2标签库详解(非常不错)”的资源应该包含了对Struts2所有标签的详细介绍,以及相关...
6. If标签:条件判断,如`s:if`。 7. Choose(when/otherwise)标签:用于条件选择,类似于Java中的switch语句。 8. Include标签:用于包含其他页面,如`s:include`。 9. Message标签:用于显示国际化消息,如`s:...
总结起来,这个Struts2实例项目通过整合国际化、类型转换和Struts2标签,构建了一个完整的用户管理系统,展示了如何在实际开发中高效地处理Web请求,实现业务逻辑,并提供多语言支持。这样的练习有助于提升开发者对...
在Struts2框架中,标签库是其核心特性之一,它提供了丰富的UI组件和控制逻辑,使得开发者可以更加便捷地进行页面渲染和交互处理。本文将深入探讨Struts2标签的中文文档,以及如何利用这些文档进行有效开发。 首先,...
通过Struts2的标签库,我们可以轻松地构建出符合MVC架构的Web应用,将视图层与业务逻辑分离,使得代码更加清晰、易于维护。同时,这些标签还提供了丰富的功能,如数据校验、国际化、AJAX支持等,大大提升了开发效率...
在Struts2中,使用了一系列的标签库来增强JSP页面的功能,使得开发者可以更方便地实现业务逻辑与视图的分离,提高代码的可读性和可维护性。本篇文章将详细介绍Struts2中的各种标签及其应用。 1. **s:form标签**:这...
Struts2标签库是Java开发Web应用程序时常用的一个强大工具,尤其在构建MVC(Model-View-Controller)架构的应用程序中发挥着重要作用。Struts2框架提供了丰富的自定义标签库,极大地简化了视图层的开发,使得开发者...
Struts2框架提供了丰富的标签集合,这些标签主要用于JSP页面,帮助开发者处理常见任务,如数据展示、表单处理、逻辑控制等。在实际开发中,掌握Struts2标签库能让你的代码更加简洁且易于维护。 首先,我们要理解...