2012-11-26 59 views
0

我有代碼:春+ JSP + JavaScript的 - 春:hasBindErrors

<spring:hasBindErrors name="formTest"> 
    <c:forEach items="${errors.globalErrors}" var="error"> 
     <spring:message code="${error.code}" /><br/> 
    </c:forEach> 
</spring:hasBindErrors> 

所以我通過${errors}從春天。

如何在JavaScript中檢查是否存在錯誤?我想:

<script type="text/javascript"> 
    var NO_ERRORS = ${errors.errorCount? true :false}; 
</script> 

但我始終有:(即使錯誤是存在的)

我嘗試過:

<script type="text/javascript"> 
     var NO_ERRORS = <c:if test="{empty errors}">true</c:if><c:if test="{not empty errors}">false</c:if>; 
    </script> 

和:(這裏我總是

<script type="text/javascript"> 
     var NO_ERRORS = ${empty errors? true :false}; 
    </script> 

好吧,我有:

<spring:hasBindErrors name="formModel"> 
      <c:set var="isError" value="${errors.errorCount == 0}" /> 
      <c:if test="${isError}"> 
      <script type="text/javascript"> 
       IS_ERRORS = false; 
       </script> 
      </c:if> 
    </spring:hasBindErrors> 

但它是錯誤的,因爲不工作這一點:<c:set var="isError" value="${errors.errorCount == 0}" />如果我改變<c:set var="isError" value="${errors.errorCount > 0}" />是好的,但爲什麼首先解決不起作用?

回答

1
var NO_ERRORS = <c:if test="{empty errors}">true</c:if><c:if test="{not empty errors}">false</c:if>; 

假設您只有在存在錯誤時才保存errors。否則你可以檢查基於errors.errorCount==0

+0

我必須在哪裏粘貼你的代碼?因爲在js文件中,我有錯誤:SyntaxError:syntax error \t var NO_ERRORS =; – faszynski

+0

從上面的代碼看來,沒有單獨的JS文件,因此您必須將該代碼粘貼到