Inhaltsverzeichnis
验证实例
Heim php教程 PHP开发 Ausführliche Erläuterung der Beispiele für die Winkelformvalidierung

Ausführliche Erläuterung der Beispiele für die Winkelformvalidierung

Dec 09, 2016 pm 02:53 PM
angular

Formularvalidierung

Ich komme mir vor, als wäre ich eigentlich eine sehr dumme Person, ich verschwende immer viel Zeit, nur weil ich ein Wort falsch geschrieben habe oder so, das funktioniert wirklich nicht Nein, wir müssen dieses Problem richtig behandeln. Kommen wir zur Sache. Es werden auch Formularvalidierungen wie „minlength“, „maxlength“ und „required“ unterstützt. Nummer, URL usw. Jetzt müssen wir den Stil verwenden. Wie kann man ihn dann überprüfen?

<!DOCTYPE html>
<html ng-app=&#39;app&#39;>
<head>
<meta charset=&#39;UTF-8&#39;>
<title>form1</title>
<link rel="stylesheet" type="text/css" href="static/plugins/bootstrap.min.css">
<script type="text/javascript" src=&#39;static/plugins/angular.min.js&#39;></script>
<script type="text/javascript" src=&#39;static/plugins/angular-messages.js&#39;></script>
</head>
<body>
<div class="col-md-6">
<form role="form" name="myForm" class="form-horizontal" novalidate>
<label>用户名</label>
<input type="email" placeholder="ng-Messages测试" name="name" ng-model="username.name"
ng-minlength=3 ng-maxlength=20 required />
<div ng-messages="myForm.name.$error">
<div ng-message="required">必填项</div>
<div ng-message="minlength">字符太短小于3</div>
<div ng-message="maxlength">字符太长大于20</div>
<div ng-message=&#39;email&#39;>正确的邮箱格式</div>
</div>
</form>
</div>
</body>
<script type="text/javascript">
angular.module("app", [&#39;ngMessages&#39;]);
</script>
</html>
Nach dem Login kopieren

Das war's, es gibt ein paar Punkte zu erklären,

Der erste ist die Einführung von angle-messages.js,

Der zweite ist, dass Nachrichten und Nachrichten klar verstanden werden müssen. Ah ,

Dritter myForm.name.$error: Dieses myForm ist der Namenswert des Formulars und name ist der Namenswert der zu überprüfenden Eingabe.

Viertens können Sie die Verifizierung auch individuell anpassen.

Nun, die fünften Worte sind noch nicht verraten. Die Meister können mal schauen, ob es noch etwas zu beachten gibt.

Lassen Sie uns darüber sprechen, wie Sie eine benutzerdefinierte Verifizierung durchführen. Der Code lautet

<input type="text"
placeholder="Desired username"
name="username"
ng-model="signup.username"
ng-minlength=3
ng-maxlength=20
ensure-unique="username" required />
Nach dem Login kopieren

Sie sehen, dass es sich bei dieser Sicherstellung um eine benutzerdefinierte Verifizierung handelt , es muss nur so sein, wie es in HTML geschrieben ist. Es gibt auch einen entsprechenden Code, der mit Anweisungen geschrieben ist >

Haben Sie gesehen, dass die benutzerdefinierte Überprüfung in zwei Schritten von HTML und JS durchgeführt wird? Ich fühle mich etwas niedergeschlagen und kann es nicht tun. Wie auch immer, ich habe diese beiden Codeteile gepostet, um Ihnen zu erklären, wie Sie eine benutzerdefinierte Validierung schreiben, haha ​​​​
angular.module(&#39;myApp&#39;, [])
.directive(&#39;ensureUnique&#39;, [&#39;$http&#39;, function($http) {
return {
require: &#39;ngModel&#39;,
link: function(scope, ele, attrs, c) {
scope.$watch(attrs.ngModel, function() {
$http({
method: &#39;POST&#39;,
url: &#39;/api/check/&#39; + attrs.ensureUnique,
data: {&#39;field&#39;: attrs.ensureUnique}
}).success(function(data, status, headers, cfg) {
c.$setValidity(&#39;unique&#39;, data.isUnique);
}).error(function(data, status, headers, cfg) {
c.$setValidity(&#39;unique&#39;, false);
});
});
}
};
}]);
Nach dem Login kopieren

Nun, es gibt auch das Formularvalidierungsattribut von Anglar. Laden Sie einfach das Formular hoch, es wird klar sein Auf einen Blick ist das alles. Es ist auf Cainiao.com verfügbar, Sie können danach suchen

Dann, wie man das verwendet, okay, hier ist der Code

Eine Zusammenfassung der Verwendung, Ausführliche Erläuterung der Beispiele für die Winkelformvalidierung

1. Solange Sie ein Angular.js verwenden, müssen Sie keine anderen JS einführen, aber Sie kennen die Nachteile. Sie können nicht mehr überprüfen Bedingungen. Hehe, es hängt von Ihren eigenen Bedürfnissen ab.

2. Sie verwendet ng-show, um es anzuzeigen. Woher kommt myForm.user.$error.required? Es sind immer noch die gleichen Namenswerte erforderlich ist erforderlich, es entspricht $dirty also...myForm.user.$dirty, haha, die Bedeutung dieser Vertreter ist sowieso alle im Formular. Ich bin der Meinung, dass diese Art der Überprüfungsbedingung wirksam ist. Auch hier kommt es auf Ihre Bedürfnisse an.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script>
</head>
<body>
<h2 id="验证实例">验证实例</h2>
<form ng-app="myApp" ng-controller="validateCtrl"
name="myForm" novalidate>
<p>用户名:<br>
<input type="text" name="user" ng-model="user" required>
<span style="color:red" ng-show="myForm.user.$dirty && myForm.user.$invalid">
<span ng-show="myForm.user.$error.required">用户名是必须的。</span>
</span>
</p>
<p>邮箱:<br>
<input type="email" name="email" ng-model="email" required>
<span style="color:red" ng-show="myForm.email.$dirty && myForm.email.$invalid">
<span ng-show="myForm.email.$error.required">邮箱是必须的。</span>
<span ng-show="myForm.email.$error.email">非法的邮箱地址。</span>
</span>
</p>
<p>
<input type="submit"
ng-disabled="myForm.user.$dirty && myForm.user.$invalid || 
myForm.email.$dirty && myForm.email.$invalid">
</p>
</form>
<script>
var app = angular.module(&#39;myApp&#39;, []);
app.controller(&#39;validateCtrl&#39;, function($scope) {
$scope.user = &#39;John Doe&#39;;
$scope.email = &#39;john.doe@gmail.com&#39;;
});
</script>
</body>
</html>
Nach dem Login kopieren

3. Bei dieser Verwendung gibt es noch ein weiteres Problem: Wenn Sie zum Beispiel zuerst ein erforderliches Feld verifizieren möchten und zu Beginn kein Inhalt im Eingabefeld vorhanden ist, wird dessen Verifizierungsaufforderung nicht angezeigt Sie müssen ihm zuerst einen Standardwert in js zuweisen. Ich bin der Meinung, dass dieser Effekt nicht gut ist. Sie sehen also, dass $scope.user = 'John Doe';js ihm zuerst einen Wert zuweist.

4. Es gibt noch eine andere Frage: Sie müssen zuerst einen Wert zuweisen, und dann müssen Sie einen Controller definieren, und ich denke, zusammenfassend denke ich, dass dies die erste Methode ist besser. .

5. Es gibt noch eine weitere Frage: Denken Sie daran, ng-model an jeden Eingang zu binden, sonst wie man es überwacht. Persönliche Meinung,

Außerdem können diese beiden tatsächlich kombiniert werden. Wenn nicht, können Sie sich den Code ansehen. Okay, kommen wir zum Code

Das ist es.

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Lassen Sie uns über Metadaten und Dekoratoren in Angular sprechen Lassen Sie uns über Metadaten und Dekoratoren in Angular sprechen Feb 28, 2022 am 11:10 AM

Dieser Artikel setzt das Erlernen von Angular fort, führt Sie zum Verständnis der Metadaten und Dekoratoren in Angular und erläutert kurz deren Verwendung. Ich hoffe, dass er für alle hilfreich ist!

So installieren Sie Angular unter Ubuntu 24.04 So installieren Sie Angular unter Ubuntu 24.04 Mar 23, 2024 pm 12:20 PM

Angular.js ist eine frei zugängliche JavaScript-Plattform zum Erstellen dynamischer Anwendungen. Es ermöglicht Ihnen, verschiedene Aspekte Ihrer Anwendung schnell und klar auszudrücken, indem Sie die Syntax von HTML als Vorlagensprache erweitern. Angular.js bietet eine Reihe von Tools, die Sie beim Schreiben, Aktualisieren und Testen Ihres Codes unterstützen. Darüber hinaus bietet es viele Funktionen wie Routing und Formularverwaltung. In dieser Anleitung wird erläutert, wie Angular auf Ubuntu24 installiert wird. Zuerst müssen Sie Node.js installieren. Node.js ist eine JavaScript-Ausführungsumgebung, die auf der ChromeV8-Engine basiert und es Ihnen ermöglicht, JavaScript-Code auf der Serverseite auszuführen. In Ub sein

Detaillierte Erläuterung des Angular Learning State Managers NgRx Detaillierte Erläuterung des Angular Learning State Managers NgRx May 25, 2022 am 11:01 AM

Dieser Artikel vermittelt Ihnen ein detailliertes Verständnis des Angular-Statusmanagers NgRx und stellt Ihnen die Verwendung von NgRx vor. Ich hoffe, er wird Ihnen hilfreich sein!

Eine kurze Analyse der Verwendung des Monaco-Editors in Angular Eine kurze Analyse der Verwendung des Monaco-Editors in Angular Oct 17, 2022 pm 08:04 PM

Wie verwende ich den Monaco-Editor in Angular? Der folgende Artikel dokumentiert die Verwendung des Monaco-Editors in Angular, der kürzlich in einem Unternehmen verwendet wurde. Ich hoffe, dass er für alle hilfreich sein wird!

Ein Artikel über serverseitiges Rendering (SSR) in Angular Ein Artikel über serverseitiges Rendering (SSR) in Angular Dec 27, 2022 pm 07:24 PM

Kennen Sie Angular Universal? Es kann dazu beitragen, dass die Website eine bessere SEO-Unterstützung bietet!

Angular + NG-ZORRO entwickeln schnell ein Backend-System Angular + NG-ZORRO entwickeln schnell ein Backend-System Apr 21, 2022 am 10:45 AM

In diesem Artikel erfahren Sie, wie Sie mit Angular in Kombination mit ng-zorro schnell ein Backend-System entwickeln. Ich hoffe, dass er für alle hilfreich ist.

Wie man PHP und Angular für die Frontend-Entwicklung verwendet Wie man PHP und Angular für die Frontend-Entwicklung verwendet May 11, 2023 pm 04:04 PM

Mit der rasanten Entwicklung des Internets wird auch die Front-End-Entwicklungstechnologie ständig verbessert und iteriert. PHP und Angular sind zwei Technologien, die in der Frontend-Entwicklung weit verbreitet sind. PHP ist eine serverseitige Skriptsprache, die Aufgaben wie die Verarbeitung von Formularen, die Generierung dynamischer Seiten und die Verwaltung von Zugriffsberechtigungen übernehmen kann. Angular ist ein JavaScript-Framework, mit dem Single-Page-Anwendungen entwickelt und komponentenbasierte Webanwendungen erstellt werden können. In diesem Artikel erfahren Sie, wie Sie PHP und Angular für die Frontend-Entwicklung verwenden und wie Sie diese kombinieren

Lassen Sie uns darüber sprechen, wie Sie das Angular-DateTime-Picker-Format anpassen Lassen Sie uns darüber sprechen, wie Sie das Angular-DateTime-Picker-Format anpassen Sep 08, 2022 pm 08:29 PM

Wie kann ich das Angular-DateTime-Picker-Format anpassen? Im folgenden Artikel geht es um die Anpassung des Formats. Ich hoffe, er ist für alle hilfreich!

See all articles