• <s:if>标签与ActionContext.getContext().getSession()


    今天在做<s:if>标签中的属性值从 ActionContext.getContext().getSession().put("WW_TRANS_I18N_LOCALE",LocaleUtils.toLocale(locale_language));   中获取值进行判断是,判断结果总是为false。

    JSP页面:

    <s:if test='#session.WW_TRANS_I18N_LOCALE=="zh_TW"'>
      111
    </s:if>
    <s:else>
         222
    </s:else>

    判断#session.WW_TRANS_I18N_LOCALE=="zh_TW"的结果总是为false,尝试了<s:if test='#session.WW_TRANS_I18N_LOCALE=="zh_TW".toString()'>

    和<s:if test='#attr.WW_TRANS_I18N_LOCALE=="zh_TW"'>均无法实现想要的结果。

    在JSP页面上用 <s:property value="#session.WW_TRANS_I18N_LOCALE"/>可以得到正确的结果,可是判断就是不行。

    后面使用了如下方法,解决了问题:

    <% request.setAttribute("lang",ActionContext.getContext().getSession().get("WW_TRANS_I18N_LOCALE").toString()); %>
    <s:if test='#request.lang=="zh_TW"'>

    111
    </s:if>
    <s:else>
         222
    </s:else>

    上面各种方法不能实现的原因暂时还没搞清楚,不过已经实现了自己想要的效果。

    <s:if>怎么引用页面的变量进行判断?

    <s:set var="tNam"><%=Constant.AD_TEMPLATE_TYPE_COMMON%></s:set>
                            <s:if test="adStyle eq #tNam">
                                <s:if test="adTemplateList.size>0">
                                    <s:iterator value="adTemplateList" id="adTemplate" status="c">
                                        <td style="text-align: center">
                                            <div>
                                                <a target="navTab" title="普通广告新增" class="tmpSelect"
                                                    rel="toAddCommon"
                                                    href="ad/adPackage!toAddCommon.do?adPackage.adTemplateId=<s:property value='#adTemplate.adTemplateId'/> && adStyle=<s:property value='adStyle'/>">
                                                    <img id='tempList<s:property value="#c.index+1"/>'
                                                    src="<s:property value='#adTemplate.adTemplatePath'/>"
                                                    style="height: 254px; 171px;" /> <br> <span><s:property
                                                            value="#adTemplate.adTemplateName" /></span>
                                                </a>
                                            </div>
                                        </td>
                                    </s:iterator>
                                </s:if>
                            </s:if>

  • 相关阅读:
    计算机网络概述---传输层 UDP和TCP
    计算机网络概述---网络层
    计算机网络概述---数据链路层
    计算机网络概述---物理层
    计算机网络概述---OSI参考模型
    Java 集合系列18之 面试题
    【Vue-01】基础Vue语法+JS复习
    SpringBoot 注册Servlet三大组件【Servlet、Filter、Listener】-原生代码+@Bean+效果展示
    Springboot的 get查看,post创建,put更新,delete删除 -四种请求实例(form + controller)
    【Bug档案01】Spring Boot的控制器+thymeleaf模板 -使用中出现静态资源加载路径不当的问题 -解决时间:3h
  • 原文地址:https://www.cnblogs.com/chubeautiful/p/3144371.html
Copyright © 2020-2023  润新知