2016-07-29 6 views
0

Hallo ich lerne eckig mit meinem Zweig mvc application.i'm mit Thymeleaf für Templating. Aber wenn Formular mit eckiger Formularüberprüfung verwenden, muss ich && mit ng-submit verwenden. Bei der Ausführung von Anwendungs ​​thymeleaf mich nicht erlauben &&thymeleaf nicht erlaubt mit `&&` in form

<form role="form" name="stationform" novalidate="novalidate" ng-submit="stationform.$valid && addStation(station)"> 

</form> 

Ausnahme zu verwenden, habe ich

ERROR: org.thymeleaf.templateparser.ErrorHandler - [THYMELEAF][http-nio-8181-exec-9] Fatal error during parsing 
org.xml.sax.SAXParseException; lineNumber: 20; columnNumber: 97; The entity name must immediately follow the '&' in the entity reference. 
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:198) 
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:177) 
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:441) 
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:368) 
    at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1436) 
    at com.sun.org.apache.xerces.internal.impl.XMLScanner.scanAttributeValue(XMLScanner.java:885) 
+0

Haben Sie 'und' versucht? http://stackoverflow.com/questions/18006941/thymeleaf-boolean-operators – ccheneson

Antwort

3

Ein eigenständiges & ist illegal in HTML, sondern arbeitet in der Regel aufgrund der Kronzeugenregelung von Browser-Parsing. Die Wahrheit ist, jeder sollte stattdessen &amp; verwenden. In Ihrem Fall haben Sie keine andere Wahl, weil Thymeleaf Parsing viel strenger als Ihr Browser ist, so dass Sie &amp;&amp; statt && benötigen. Beachten Sie, dass dies auch für > und < in Ausdrücken gilt (z. B. müssen Sie ng-if="a &gt; b" anstelle von ng-if="a > b" schreiben).

2

können Sie "und" insted & & Bonus: Verwendung "oder" anstelle von ||

Alle von ihnen (& & ||) werden nur in Javascript verwendet!

+0

Können Sie ein bisschen mehr erklären? –