2

私はコードを持っています:

<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>

しかし、私は常に持っています:false(エラーが存在する場合でも)

私も試しました:

<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}" />と良いのですが、なぜ最初に解決策が機能しないのでしょうか。

4

1 に答える 1

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ますerrors.errorCount>0

于 2012-11-26T10:28:27.360 に答える