下面的代码片段中有什么错误?

时间:2013-05-29 14:43:56

标签: eclipse jsp struts2

我有以下使用struts标记的jsp代码:

<input type = "radio" 
    id = "<s:property value="name"/>" 
    name = "<s:property value="name"/>" 
    value = "<s:property value="value"/>" 
    <s:if test="fieldValue==null">
        <s:if test="defaultOption==true">
            checked="checked" 
        </s:if>
    </s:if>
    <s:else>
        <s:if test="value==fieldValue">
            checked="checked" 
        </s:if>
    </s:else>
/>

Eclipse说: 开始标记(输入)未正确关闭,预期&gt;。 但我找不到错误在哪里。请帮忙。

2 个答案:

答案 0 :(得分:0)

这可能是一个日食错误,因为Netbeans没有错误

如果您不想在Eclipse中看到错误(仅在这种情况下):

在第一个if中,像这样进行测试:

fieldValue==null && defaultOption==true

并摆脱内部if

它应该是相同的

PS:尝试找到一种方法来使用s:radio也许

答案 1 :(得分:0)

Eclipse抱怨因为它不接受输入标记内的标记(例如<s:if>),您可以按照注释中的建议停用JSP验证。

Go to project properties and uncheck JSP Content Validator, then clean your project

如果您不想禁用验证,请参考以下建议解决方案:

<s:if test="fieldValue==null">
    <s:if test="defaultOption==true">
        <input type = "radio" id = "<s:property value="name"/>"  name = "<s:property value="name"/>" value = "<s:property value="value"/>" checked="checked" />
    </s:if>
</s:if>
<s:else>
    <s:if test="value==fieldValue">
        <input type = "radio" id = "<s:property value="name"/>"  name = "<s:property value="name"/>" value = "<s:property value="value"/>" checked="checked" />
    </s:if>
</s:else>

请注意,您的JSP代码会给出相同的结果(我想这只是为了说明:))。

相关问题