JSTL标签库中<c:choose></c:choose>不能放JSP页面<!-- -->注释

笔者最近在使用JSTL标签库的<c:choose>标签时候,发现在该标签体中加了JSP的<!-- -->注释时,总是会显示报错信息。错误的信息如下:

<span style="font-size:18px;">org.apache.jasper.JasperException: <h3>Validation error messages from TagLibraryValidator for c in /list.jsp</h3><p>69: Illegal text inside "c:choose" tag: "<!-- wh...".</p></span>  

在<c:choose></c:choose>中并不是不能放<!-- -->注释,而是不能直接放在该<c:choose></c:choose>标签体内。如果<c:choose></c:choose>中还有其他标签(例如<c:when></c:when>),把<!-- -->注释放在其中还是可以的。或者如果要在<c:choose></c:choose>注解,可以使用<%-- --%>注释。

例子如下:

<c:choose>  
            <!-- 在<c:choose></c:choose>下,该注释格式“不可用 ” -->  
            <%--<c:choose></c:choose>下,该注释格式“可用 ” --%>  
            <c:when test="">  
            </c:when>  
  
            <c:otherwise>  
            <!-- 在<c:choose></c:choose>下的其他标签体,该注释格式“可用 ” --!><span style="font-family: Arial, Helvetica, sans-serif;"></span>  
            </c:otherwise>  
        </c:choose>  

转自:http://blog.csdn.net/u011106957/article/details/45033855

posted on 2016-12-30 16:12  代码ok  阅读(488)  评论(0编辑  收藏  举报