疏忽,也没有相应的总结。实际上JSTL标签Struts2标签混淆。导致一些上述问题的细节。今天我给从下一个总结,同

后不要再犯这种错误。

总喜欢在s:if标签里面使用$,导致各种数据读不出来。

strust 2 if 标签的单个字符字符串比較的问题;

还有就是啥时候用#,啥时候不用#,啥时候能够省略#。

代码1、

	<select id="typeProvider" name="typeProvider" style="width: 200px;">
<s:iterator value="providers" var="provider">
<option value="${provider.id}"
<s:if test="id==equipment.provider.id">selected="selected"</s:if> >${provider.name}
</option>
</s:iterator>
</select>

代码作用:跳转到改动资料页面时。下拉列表默认选中的为本设备所相应的供应商

equipment(本设备对象)、providers(全部供应商List)均有后台Action提供geter/setter方法。

这行代码(正确):

<s:if test="<span style="color:#33CC00;">id</span>==equipment.provider.id">selected="selected"</s:if> >${provider.name}

这个位置,总是写成(错误):

<s:if test="<span style="color:#FF0000;">provider.id</span> == equipment.provider.id">selected="selected"</s:if> >${provider.name}

后面发现能够这样写(也正确):

<s:if test="<span style="color:#33CC00;">#provider.id</span>==equipment.provider.id">selected="selected"</s:if> >${provider.name}

事实上原理还真是不怎么清楚。仅仅知道假设action中假设声明了变量,并赋之以set,get方法,那么接收參数是不须要使用#,假如就是普通的request传递,则须要用#。哪位大神假设知晓。希望可以指点一二。

代码2、

<span style="font-size:14px;">	<s:iterator value="equipmentList" var="equipment" status="status">
<tr style="height: 25px; text-align: center;">
<td><s:property value="#status.index+1"/></td>
<td>${equipment.terorder}</td>
<td>${equipment.tertype}</td>
<td>${equipment.provider.name}</td>
<td>
<s:if test="#equipment.isuser==1">
启用
</s:if>
<s:if test="isuser == 0">
禁用
</s:if>
</td>
<td>${equipment.opercard}</td>
<td>${equipment.bizcard}</td>
</tr>
</s:iterator></span>

还是得说说这个,只是却还要其它问题,代码例如以下(正确):(注意此时的tm_onlinestatus为String类型)

	<s:if test="%{#items.tm_onlinestatus == 1}">
<span style="color:blue">在线</span>
</s:if>
<s:if test="%{#items.tm_onlinestatus == 0}">
<span style="color:red">下线</span>
</s:if>

只是这样写就不正确啦(错误)!

<span style="font-size:14px;">	<s:if test="%{#items.tm_onlinestatus == <span style="color:#FF0000;">'1'</span>}">
<span style="color:blue">在线</span>
</s:if>
<s:if test="%{#items.tm_onlinestatus == <span style="color:#FF0000;">'0'</span>}">
<span style="color:red">下线</span>
</s:if></span>

还要一种写法。预计更easy理解(正确):

<span style="font-size:14px;">	<s:if test='%{#items.tm_onlinestatus ==  <span style="color:#33CC00;">"1"</span>}'>
<span style="color:blue">在线</span>
</s:if>
<s:if test='%{#items.tm_onlinestatus == <span style="color:#33CC00;">"0"</span>}'>
<span style="color:red">下线</span>
</s:if></span>

这里的话:因为java这是一个强类型语言,单引号char类型,它只能被分配给一个字符char类型,双引号表示String类型,因为tm_onlinestatus房地产是String类型,使用双引号是必要的。那么,为什么不能直接 == 1 这种情况是不是很清楚。同样希望指点一二。

struts 2吊牌s:if 、s:iterator注意的更多相关文章

  1. vue实现带logo的二维码/商品条形码/打印商品吊牌

    一.带logo的二维码 1.安装 npm install vue-qr --save 2.在页面或组件中使用 <template> <div id="qrcode" ...

  2. struts1吊牌&lt;logic:iterate&gt;

    <logic:iterate>主要用于处理网页上的输出集合,集合是其中一般下列之一: 1. java对象的数组 2. ArrayList.Vector.HashMap等 具体使用方法请參考 ...

  3. Hibernate和Struts分页查询

    分页查询数据库方法 /** * 分页查询方法 * @param sql,pageNO,maxResult * @return List */ public List<Object> que ...

  4. C#调用斑马打印机打印条码标签(支持COM、LPT、USB、TCP连接方式和ZPL、EPL、CPCL指令)【转】

    原文地址:http://blog.csdn.net/ldljlq/article/details/7338772 在批量打印商品标签时一般都要加上条码或图片,而这类应用大多是使用斑马打印机,所以我也遇 ...

  5. SaaS系列介绍之三: SaaS的特性与作用

    1 SaaS的特性 最早的SaaS服务之一当属在线电子邮箱,极大地降低了个人与企业使用电子邮件的门槛,进而改变了人与人.企业与企业之间的沟通方式.发展至今,SaaS服务的种类与产品已经非常丰富,面向个 ...

  6. 浅谈RFID电子标签封装技术

    1RFID技术概述 1.1RFID技术概念 RFID是RadioFrequencyIdentification的缩写,即射频识别技术,俗称电子标签.RFID射频识别是一种非接触式的自动识别技术,它通过 ...

  7. 绫致时装讲述O2O细节:野心在“私人定制” - 移动购物 - 亿邦动力网

    绫致时装讲述O2O细节:野心在"私人定制" - 移动购物 - 亿邦动力网 绫致时装讲述O2O细节:野心在"私人定制" 作者: 亿邦动力网来源: 亿邦动力网201 ...

  8. Excel—工作常用

    上周起始日期 =TODAY()-WEEKDAY(TODAY(),2)-6 TODAY()表示的是当天的日期,WEEKDAY(TODAY(),2)表示本周的星期几,TODAY()-WEEKDAY(TOD ...

  9. 面试题:电梯/雨伞/杯子/笔/A4纸/纸杯… 怎么测试?

    目的 面试的时候,面试官出题可能会出其不意: 比如随意指定生活当中的一件物品,问你如何测试,见下 作为测试人员,电梯/雨伞/杯子/笔/A4纸/纸杯… 怎么测试? 面试官的考察点 1.在没有需求文档或者 ...

随机推荐

  1. c++构造析构顺序

    class A { public: A(){ cout << "constrcut A" << endl; }; ~A(){ cout << & ...

  2. VirtualBox开发环境的搭建详解

    有关VirtualBox的介绍请参考:VirtualBox_百度百科 由于VirtualBox官网提供的搭建方法不够详细,而且本人在它指导下,从下载所需的开发包,到最后生成二进制文件,中间遇到了许多的 ...

  3. QPointer更安全,QScopedPointer自动出范围就删除,QSharedDataPointer帮助实现隐式共享

    http://blog.csdn.net/hai200501019/article/details/8474582http://blog.csdn.net/hai200501019/article/d ...

  4. IntelliJ IDEA 开发swing(二)

    原文:idea开发swing(二) 闲话少说,书接idea开发swing(一). 程序编译完成后,需要打包发布,如果有fat_jar的同学可以通过该插件打包,这里是使用ant来打包,步骤如下: 一.编 ...

  5. 基于visual Studio2013解决C语言竞赛题之0608水仙花函数

     题目 解决代码及点评 /* 功能:写一函数判断某数是否"水仙花数",所谓"水仙花数"是指一个三位数, 其各位数字立方和等于该数本身. */ #includ ...

  6. android intent收集转载汇总

    Intent intent = new Intent(Settings.ACTION_WIRELESS_SETTINGS);                 ComponentName comp = ...

  7. 【cocos2d-x】3.0使用cocos-console创建,编,部署游戏

    原文地址:http://fengchenluoyu.duapp.com/272.html cocos2d-x 3.0開始添加了一个cocos-console组件,它位于cocos2d-x 3.0的to ...

  8. lsh341999的资源

    懒得下载了,仔细研究: http://download.csdn.net/user/lsh341999/uploads/2

  9. 改动导航栏上返回button上的字,比如把back改动为返回

    改动导航栏上返回button上的字,比如把back改动为返回 注意:这个须要在跳转之前到视图控制器中写,而不是在跳转之后到控制器中写 UIBarButtonItem *backIetm = [[UIB ...

  10. [置顶] 让导入的Android项目,运行起来的方法。

    Eclipse里面直接import的代码,不能运行出现如下错误: [2013-12-12 12:58:55 - Dex Loader] Unable to execute dex: java.nio. ...