首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >组合使用嵌套<nested:equal>和<nested:write>

组合使用嵌套<nested:equal>和<nested:write>
EN

Stack Overflow用户
提问于 2013-07-12 22:20:02
回答 2查看 7.2K关注 0票数 3

基本上,我的问题很简单,但它需要一个了解Struts1.1并且还活着的人。

我尝试构建的伪代码如下所示:

代码语言:javascript
复制
IF element.method1 = true THEN
   IF element.method2 = true THEN
      COLOR.GREEN, PRINT element.prop1
   ELSE
      COLOR.RED, PRINT element.prop1
   END
ELSE
   COLOR.BLACK, PRINT element.prop1
END

整个事情都会在一个迭代中发生。因此,以下是目前正在运行但尚未实现的目标:

代码语言:javascript
复制
<nested:equal property="method1" value="true">
    <nested:write property="prop1" /> 
</nested:equal>

<nested:notEqual property="method1" value="true">
    <nested:write property="prop1" />
</nested:notEqual>

现在真正让我抓狂的是,这也是可行的:

代码语言:javascript
复制
<nested:equal property="method1" value="true">
   <nested:equal property="method2" value="true">
   </nested:equal>                
</nested:equal>
                        
<nested:notEqual property="method1" value="true">
   <nested:write property="prop1" />
</nested:notEqual>

但是,每当我在两个内部nested:equal标记之间插入一些东西时,它就不能编译。

因此,我的最终解决方案(见下文)将不会编译出现问题的"Missing Endtag for nested:write."

代码语言:javascript
复制
<nested:equal property="method1" value="true">

   <nested:equal property="method2" value="true">
           <nested:write property="element.prop1" />
   </nested:equal>   
                        
</nested:equal>
                        
<nested:notEqual property="method1" value="true">
    <nested:write property="element.prop1" />
</nested:notEqual>

大约4个小时后,我仍然不知道如何处理这一点,所以任何建议都会非常感谢,甚至在这篇文章发表两周后也会有所帮助,因为我的下一步是深入研究Struts1.1文档。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-07-19 23:52:10

虽然Roman C的解决方案工作得很好,但我也设法将其与嵌套标记组合在一起。

不幸的是,我不被允许发布原始源代码,但这就是它现在是如何工作的:

代码语言:javascript
复制
<nested:form action="/someReq" styleClass="standard">
    <nested:present property="myBean.genList">

        <nested:iterate property="myBean.genList" indexId="index">

            <nested:equal property="method1" value="true">

                <nested:equal property="method2" value="true">
                    <strong class="green">
                        <nested:write property="prop1" />
                    </strong>
                </nested:equal>

                <nested:notEqual property="method2" value="true">
                    <strong class="red">
                        <nested:write property="prop1" />
                    </strong>
                </nested:notEqual>

            </nested:equal>

            <nested:notEqual property="method1" value="true">
                <nested:write property="prop1" />
            </nested:notEqual>

        </nested:iterate>

    </nested:present>
</nested:form>
票数 0
EN

Stack Overflow用户

发布于 2013-07-15 19:36:33

使用

代码语言:javascript
复制
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

代码将如下所示

代码语言:javascript
复制
<c:choose>
  <c:when test="${element.method1 == true}"> 
    <c:choose> 
      <c:when test="${element.method2 == true}"> 
        <span style="color:green;"><c:out value="${element.prop1}/></span>
      </c:when>
      <c:otherwise>
        <span style="color:red;"><c:out value="${element.prop1}/></span>
      </c:otherwise>
    </c:choose>
  </c:when>
  <c:otherwise>
    <span style="color:black;"><c:out value="${element.prop1}/></span>
  </c:otherwise>
</c:choose>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17617112

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档