2016-05-04 7 views
0

Ich bin neu bei angularjs und versuche, ein Formular mit einigen Validierungsnachrichten mit ng-messages und ng-messages-include zu erstellen.ng-messages-include funktioniert nicht

Wenn ich Inline-Fehlermeldungen mit ng-messages schreibe funktioniert es, aber wenn ich ng-messages-include verwenden und auf eine Remote-Datei verweisen, funktioniert es nicht. Unten ist der Code.

messages.html

<div ng-message="required">This field is required</div> 

form.html

</div> 
     <div ng-messages="form.name.$error" style="color:red" ng-if="form.name.$dirty" ng-messages-include="pages/html/messages.html"> 
    <!-- <div ng-message="required">You did not enter a field</div>--> 
</div> 

Wenn ich den Code Kommentar- über es gut funktioniert, aber mit ng-messages-include es funktioniert nicht. Bitte helfen.

Vielen Dank im Voraus.

+0

Geben Sie einen Stift/Fach bitte, mehr Code. – alphapilgrim

Antwort

0

ich habe es funktioniert. Das ng-messages-include muss ein Kind im div sein.

</div> 
    <div ng-messages="form.name.$error" style="color:red" ng-if="form.name.$dirty"> 
<div ng-messages-include="pages/html/messages.html"></div> 
</div> 
1

Überprüfen Sie, ob die messages.html tatsächlich geladen wird. Vielleicht ist deine URL falsch? Vielleicht muss es am Anfang ein "/" Zeichen haben, um im Wurzelverzeichnis zu beginnen?

Sie können überprüfen, ob es geladen wird, indem Sie die Entwicklerkonsole durch Drücken von F12 in Ihrem Browser öffnen. Überprüfen Sie die Registerkarte "Netzwerk" und suchen Sie nach der Datei "messages.html". Ich vermute, dein Problem ist da.

+0

messages.html wird nicht geladen. Ich habe versucht, ein '/' am Anfang des Pfades hinzuzufügen, aber kein Glück. :-(. – user56690

+0

Dann ist das Problem die URL oder der Speicherort der Datei auf dem Server. Stellen Sie sicher, dass die Datei tatsächlich auf dem Server vorhanden ist, und überprüfen Sie, ob der Speicherort mit dem URL-Pfad übereinstimmt. –

Verwandte Themen