Angular kann die Funktionalität von Standardformelementen mit Anweisungen nahtlos verbessern, und wir werden ihre Vorteile diskutieren, einschließlich:
Datenbindung, Modellattributerstellung, Verifizierungsformular, Feedback -Informationen nach Überprüfungsformular, Formularanweisungsattribute
Im Folgenden überprüfen wir ihre Verwendung durch Fälle:
1. Bidirektionale Datenbindung (NG-Modell) und Modelleigenschaftsaufbau
<! DocType> <!-Verwenden Sie das Modul-> <html ng-App = "exampleApp"> <kopf> <titels> Angular-Richtlinie </title> <meta charset = "utf-8"/> <link rel = "stylesheet" type = "text/css" href = "csShet/bootstrap.min type = "text/css" href = "css/bootstrap-theMe.min 'false'}).length}}</span></h3> <div> <div> <div> <label for="action">Action: </label> <!-- ng-model Bidirectional Bidirectional Bidirectional Bidirectional Bidirectional Bidirectional Bidirectional Bidirectional Bidirectional Bidirectional Bidirectional Bidirectional Bidirectional Bidirectional Bidirectional Bidirectional Bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionalvidirektionalgebiet gebidirektionalgebiet gebidirektionalvidirektionalgebietirirektvidirektirektvidirektirirekt, bidirektionale bidirektionale bidirektionalgegründete bidirektirektiriririririririririririririririrwircirirstoff Aridirstoff Aridirwirtschaft Bidirektiriririririririririririr. Bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionalvidirektionalgebiet gebidirektionalgebiet gebidirektionalvidirektionalgebietirirektvidirektirektvidirektirirekt, bidirektionale bidirektionale bidirektionalgegründete bidirektirektiriririririririririririririririrwircirirstoff Aridirstoff Aridirwirtschaft Bidirektiriririririririririririr. Bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionale bidirektionalvidirektionalgebiet gebidirektionalgebiet gebidirektionalvidirektionalgebietirirektvidirektirektvidirektirirekt, bidirektionale bidirektionale bidirektionalgegründete bidirektirektiriririririririririririririririrwircirirstoff Aridirstoff Aridirwirtschaft Bidirektiriririririririririririr. BIDirektionale bi-> <!-Wenn eine der Parteien den Ersatz sendet, ändert sich auch die andere auch ändert-> <Eingabe type = "text" id = "action" ng-model = "newtodo.action"> </div> <div> <div> <label für = "Ort"> Ort: </label> <selekte id = "location <option> Mall </option> </select> </div> <!-NG-Klick Klicken Sie auf Hinzufügen, um das Element hinzuzufügen. ng-repeat = "item in todos"> <!-$ index standards to 0, Increment-> <td> {{$ index + 1}} </td> <td> {{{item.action}} </td> <td> </td> </td> </tdly> </> </td> </tbody> </tably> </tdly> </tdly> </tdly> </tdly> </> </td> </tbody> </> </td> </tbody> </tably> </> </td> </tbody> </> </td> </tbody> </> </tdly> </div> </div> <script type = "text/javaScript" src = "js/angular.min.js"> </script> <script type = "text/javaScript"> // Definieren Sie ein Modul mit dem Namen explodpleAppular.module ("explodpleApp", []). { // Data model $scope.todos = [ { action : "play ball", complete : false }, { action : "singing", complete : false }, { action : "running", complete : true }, { action : "dance", complete : true }, { action : "swimming", complete : false }, { action : "eating", complete : false }, ]; // Add data to the model $scope.addNewItem = function (newItem) { // Determine if (angular.isDefined(newItem) && angular.isDefined(newItem.action) && angular.isDefined(newItem.location)) { $scope.todos.push({ action : newItem.action + " (" + newItem.location + ")", complete : false }) } } }) </script> </body> </html>Zunächst werden das Datenmodellumfang. Anschließend werden die Aktion und der Ort der Form in der Ansicht und in der Umgebung des Modells im Modell unter Verwendung von Zwei-Wege-Datenbindungsng-Model gebunden.
Schließlich wird die Methode addNewItem () zum Hinzufügen von Daten zum Modell durch Klicken auf das Attribut ausgelöst.
2. Überprüfungsformular
Bevor wir das Formular an den Server senden, müssen wir prüfen, ob die vom Benutzer eingereichten Daten vorhanden sind oder legal sind. Andernfalls werden nutzlose Daten übermittelt.
<! DocType> <!-Verwenden Sie das Modul-> <html ng-App = "exampleApp"> <kopf> <titels> Angular-Richtlinie </title> <meta charset = "utf-8"/> <link rel = "stylesheet" type = "text/css" href = "csShet/bootstrap.min type = "text/css" href = "css/bootstrap-theMe.min ng-submit = "adduser (newuser) Wenn die Formulardaten legal sind, senden Sie die Daten an das Modell-> <Formular name =" myForm "Novalidat ng-submit =" Adduser (newUser) "> <div> <div> <div> <Div> <Div> <Div> <Label> name: </label> <! Typ = "Text" Erforderlich ng-model = "newUser.name"> </div> <div> <label> E-Mail: </label> <input name = "useremail" Typ = "E-Mail" Erforderlich ng-model </label> </div> <!-g-dessabled = "myForm. $ Invalid" Die Sendel-Taste ist nicht verfügbar, wenn es illegal ist, eine der Formulare auszufüllen-> <Button Typ = "Senden" ng-disabled = "myForm. $ Invalid"> OK </button> </div> <div> meldung: {{{message}}}}}}}}}}}}} {div> {{{{{{{{{{{{{{{{{{{myform. </form></div><script type="text/javascript" src="js/angular.min.js"></script><script type="text/javascript">angular.module("exampleApp", []) .controller("defaultCtrl", function ($scope) { // Add user data to model $scope.message $scope.addUser = function (UserDetails) {$ scope.message = userDetails.name + "(" + userDetails.email + ") (" + userDetails.Agreed + ");Zunächst werden die Methode des Datenmodells. Anschließend werden die Formularelemente validieren, Namensattribut und NG-Submit-Attribut werden der Ansicht hinzugefügt. Anschließend bindet die Zwei-Wege-Datenbindung NG-Model die Aktion und den Ort des Formulars in der Ansicht und in den Umfang. Die Tod im Modell sind gebunden, und die Überprüfungsattribute werden erforderlich und E-Mail-Formulare werden verwendet.
Anschließend ist die Schaltfläche Senden deaktiviert. Es kann nur verwendet werden, wenn alle Formulardaten legal sind. Wenn es illegal ist, wird es deaktiviert (ng-disabled = "myForm. $ Ungültig").
Schließlich werden die Daten an die adduser () -Methode des Modells übermittelt, wird über das NG-Submit-Attribut abgeschlossen.
3.. Informationen zur Überprüfung von Feedback -Informationen zur Verifizierung
Es ist alles andere als für uns, nur das Formular zu überprüfen, da der Benutzer verwirrt ist, weil er nicht weiß, warum der Fehler aufgetreten ist. Daher müssen wir die Informationen an den Benutzer feedback, damit er verstehen kann, was sie ausfüllen sollen
Stellen Sie zuerst die Klassen ein, die in NG überprüft werden sollen
Der NG-Pristine -Benutzer hat in dieser Klasse keine interaktiven Elemente hinzugefügt
ng-dirty Der Benutzer interagiert mit Elementen, die dieser Klasse hinzugefügt werden
NG-VALID-Validierungsergebnis Gültige Elemente werden dieser Klasse hinzugefügt
ng-invalid Das ungültige Element wird dieser Klasse hinzugefügt
<! DocType> <!-Verwenden Sie das Modul-> <html ng-App = "exampleApp"> <kopf> <titels> Angular-Richtlinie </title> <meta charset = "utf-8"/> <link rel = "stylesheet" type = "text/css" href = "csShet/bootstrap.min type = "text/css" href = "css/bootstrap-theMe.min.css"> <style>/*interaktives und erforderliches Stil*/Form.Validat .ng-invalid-erregt.ng-dirty {Hintergrundfarbe: Orange; } /*Interaktion ist illegaler Stil* / form .ng-invalid.ng-dirty {Hintergrundfarbe: LightPink; } /*E-Mail ist illegal und interagiert mit* / form.Validate .ng-invalid-email.ng-dirty {Hintergrundfarbe: LightGoldenRodyellow; } div.Error {Farbe: rot; Schriftgewicht: fett; } div.summary.ng-valid {color: grün; Schriftgewicht: fett; } div.summary.ng-invalid {color: rot; Schriftgewicht: fett; } </style> </head> <body> <!-Fall: bidirektionale Datenbindung-> <divalidat "ng-controller =" defaultCtrl "> <!-novalidat =" novalidat "Nur ng-Formrichter-> <!-ng-submit =" adduser (Newuser) "add data add data" add the moder add the moder add the modming Legal, ShowValidation ist wahr, was die NG-Klasse zum Validieren-> <Formname = "myForm" novalidate = "novalidat" ng-submit = "Adduser (Newuser)" ng-class = "ShowValidation, auslöst? 'Validate': '' '"> <div> <div> <Label> E-Mail: </label> <Eingabe name =" E-Mail "Typ" type = "E-Mail" Erforderlich = "Erforderlich" ng-model = "newUser.email"> <!-Verifizierung Eingabeaufforderung-> <div> <!-Show-Feedback-Informationen-> <span ng-class = "eRORGEBOT" NGS-SHOW = "SHOWVALIDATION"> SHOWVALIDATION "> oder ng-classe = "myForm. $ gültig? 'ng-valid': 'ng-invalid' "> gültig: {{myForm. $ valid}} </div> </form> </div> <script type =" text/javascript "src =" js/angular.min evicpleAppangular.module ("exampleApp", []) // einen Controller mit dem Namen defaultCtrl .Controller ('defaultCtrl', function ($ scope) {// Daten hinzufügen $ $ scope.adduser = function (userdetails) {if (myform. + ") (" + userDetails.Agreed + ")"; (Angular.isdefined (error)) {if (Fehler.Required) {return "Bitte geben Sie einen Wert ein";Definieren Sie zunächst den Stil der Feedback -Informationen und den Stil der Form der Form, stilvoll
Schreiben Sie dann das Informationsfeedback, wenn der Fehler in JS geschrieben ist
Schließlich binden Sie die NG-Klasse in der Ansicht
4. Formularanweisungseigenschaften
1. Verwenden Sie das Eingabeelement
<! DocType> <!-Verwenden Sie das Modul-> <html ng-App = "exampleApp"> <kopf> <titels> Angular-Richtlinie </title> <meta charset = "utf-8"/> <link rel = "stylesheet" type = "text/css" href = "csShet/bootstrap.min type = "text/css" href = "css/bootstrap-theMe.min ng-required="requireValue" required value through data binding --> <!-- ng-minlength="3" ng-maxlength="10" maximum and minimum characters allowed --> <!-- ng-pattern="matchPattern" Regular matching --> <input name="sample" ng-model="inputValue" ng-required="requireValue" ng-minlength="3" ng-maxLength = "10" ng-pattern = "matchPattern"> </div> </div> <div> <!-Erforderlich-> <p> Erforderlicher Fehler: {{myForm.Sample. Fehler: {{myForm.Sample. $ Error.maxLength}} </p> <!-Nur Kleinbuchstaben übereinstimmen-> <p> Muster Fehler: {{MyForm.Sample. type = "text/javaScript" src = "js/angular.min.js"> </script> <script type = "text/javaScript"> // Definieren Sie ein Modul mit dem Namen talpleAppangular. $ scope.requirevalue = true;2. Wählen Sie die Liste aus
<! DocType> <!-Verwenden Sie das Modul-> <html ng-App = "exampleApp"> <kopf> <titels> Angular-Richtlinie </title> <meta charset = "utf-8"/> <link rel = "stylesheet" type = "text/css" href = "csShet/bootstrap.min type = "text/css" href = "css/bootstrap-themen.min sorts item.id as item.action Change option value--> <!-- ng-options="item.id as item.action group by item.place for item in todos" --> <select ng-model="selectValue" ng-options="item.id as item.action group by item.place for item in todos"> <option value="">(Pick One)</option> </select> </div> <div> <p>Selected: {{{selectValue || "Keine"}} </p> </div> </form> </div> <script type = "text/javaScript" .Controller ('defaultCtrl', function ($ scope) {// modeldaten $ scope.todos = [{id: 100, platz: "schul", action: "balle", vollständig: false: false}, {id: 200, 200, ort: "home home", action: "eating }) </script> </body> </html>Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.