Sie können eine Klasse zur Validierung in Magento 2 hinzufügen. Siehe folgendes Beispiel. Es gibt fast 72 Regeln (Validierungsklasse), die Sie verwenden können:
$fieldset->addField(
'email_from',
'text',
['name' => 'email_from', 'label' => __('Email From'), 'title' => __('Email From'), 'required' => true, 'class' => 'validate-email']
);
Im Blog finden Sie eine Liste der verfügbaren Regeln für weitere Informationen:
Hier ist eine Liste der von Magento 2 unterstützten Validierungsklassenregeln. Sie müssen lediglich eine CSS-Klasse hinzufügen, damit die Regel angewendet wird.
min_text_length
max_text_length
max-words
min-words
range-words
letters-with-basic-punc
alphanumeric
letters-only
no-whitespace
zip-range
integer
vinUS
dateITA
dateNL
time
time12h
phoneUS
phoneUK
mobileUK
stripped-min-length
email2
url2
credit-card-types
ipv4
ipv6
pattern
validate-no-html-tags
validate-select
validate-no-empty
validate-alphanum-with-spaces
validate-data
validate-street
validate-phoneStrict
validate-phoneLax
validate-fax
validate-email
validate-emailSender
validate-password
validate-admin-password
validate-url
validate-clean-url
validate-xml-identifier
validate-ssn
validate-zip-us
validate-date-au
validate-currency-dollar
validate-not-negative-number
validate-zero-or-greater
validate-greater-than-zero
validate-css-length
validate-number
validate-number-range
validate-digits
validate-digits-range
validate-range
validate-alpha
validate-code
validate-alphanum
validate-date
validate-identifier
validate-zip-international
validate-state
less-than-equals-to
greater-than-equals-to
validate-emails
validate-cc-number
validate-cc-ukss
required-entry
checked
not-negative-amount
validate-per-page-value-list
validate-new-password
validate-item-quantity
equalTo
Es gibt 3 verschiedene Möglichkeiten, die Formularüberprüfung in Magento 2 zu verwenden
Verwenden Sie den folgenden Code in Ihrer Vorlage, um die JavaScript-Überprüfung zu aktivieren
1
2
3
* Benutzerdefiniertes Formular ist Formular-ID. Sie können es durch Ihre Formular-ID ersetzen
Liste der Formularvalidierungsregeln
Zum Abschluss dieses Artikels finden Sie hier eine Liste der Namen der Validierungsregeln als Kurzreferenz für die offizielle Dokumentation:
Magento-Regeln:
jQuery-Regeln:
siehe http://inchoo.net/magento-2/validate-custom-form-in-magento-2/
quelle
In UI-Komponenten kann es mit der folgenden Beispielkonfiguration (Magento v2.2.0) verwendet werden:
Weitere Beispiele finden Sie in der Datei:
vendor/magento/module-cms/view/adminhtml/ui_component/cms_page_form.xml
Die Prüferliste in den UI-Komponenten finden Sie in
vendor/magento/module-ui/view/base/web/js/lib/validation/rules.js
.Ich habe gerade dieses Skript geschrieben, um alle Schlüssel mit Fehlermeldungen zur Erklärung abzurufen:
Dies ist ein Pflichtfeld.
Bitte verwenden Sie nur Buchstaben (az oder AZ), Zahlen (0-9) oder Leerzeichen in diesem Feld.
Bitte geben Sie eine gültige Telefonnummer an
Bitte geben Sie eine gültige E-Mail-Adresse ein (Beispiel: [email protected]).
Bitte geben Sie eine gültige IP v4-Adresse ein.
Dies ist ein Pflichtfeld.
Bitte wählen Sie eine Option.
Bitte geben Sie eine gültige IP v6-Adresse ein.
Bitte geben Sie eine gültige Zeit zwischen 00:00 und 23:59 ein
Bitte geben Sie eine gültige Nummer in dieses Feld ein.
Bitte geben Sie eine gültige Telefonnummer ein. Zum Beispiel (123) 456-7890 oder 123-456-7890.
Bitte geben Sie ein korrektes Datum ein
Bitte geben Sie einen gültigen XML-identifier ein (Bsp .: something_1, block5, id-4).
Bitte geben Sie eine gültige URL ein. Zum Beispiel http://www.example.com oder www.example.com.
Bitte geben Sie 7 oder mehr Zeichen ein, sowohl numerisch als auch alphabetisch.
HTML-Tags sind nicht erlaubt.
Bitte geben Sie eine gültige Ganzzahl in dieses Feld ein.
Bitte verwenden Sie in diesem Feld nur Buchstaben (az oder AZ), Zahlen (0-9) oder Unterstriche (_). Das erste Zeichen sollte ein Buchstabe sein.
Bitte geben Sie die Ausgabenummer oder das Startdatum für den Switch / Solo-Kartentyp ein.
Bitte geben Sie mindestens {0} Wörter ein.
Bitte nur Buchstaben, Zahlen, Leerzeichen oder Unterstriche
Bitte geben Sie einen gültigen URL-Schlüssel ein (Beispiel: "example-page", "example-page.html" oder "anotherlevel / example-page").
Bitte verwenden Sie in diesem Feld nur Buchstaben (az oder AZ), Zahlen (0-9), Leerzeichen und "#".
Bitte geben Sie eine gültige Postleitzahl ein.
Bitte geben Sie ein gültiges Datum ein.
Bitte geben Sie eine Zahl größer als 0 in dieses Feld ein.
Bitte geben Sie eine gültige Nummer in dieses Feld ein.
Bitte geben Sie eine gültige Sozialversicherungsnummer ein (Beispiel: 123-45-6789).
Bitte geben Sie eine positive Zahl in dieses Feld ein.
Datei, die Sie hochladen möchten, überschreitet die maximale Dateigröße.
Bitte geben Sie eine gültige Faxnummer ein (Bsp .: 123-456-7890).
Verwenden Sie das Tag SCRIPT mit dem SRC-Attribut oder mit dem richtigen Inhalt, um JavaScript in das Dokument aufzunehmen.
Bitte geben Sie mindestens {0} Zeichen ein.
Bitte verwenden Sie dieses Datumsformat: TT / MM / JJJJ. Zum Beispiel 17/03/2006 für den 17. März 2006.
Bitte geben Sie eine gültige Handynummer an
Bitte nur Buchstaben oder Satzzeichen
Der Wert liegt nicht im angegebenen Bereich.
Bitte geben Sie eine gültige Telefonnummer an
Das Datum liegt nicht im angegebenen Bereich.
Der Wert liegt nicht im angegebenen Bereich.
Die angegebene Fahrzeugidentifikationsnummer (VIN) ist ungültig.
Bitte geben Sie zwischen {0} und {1} Wörter ein.
Bitte geben Sie eine gültige Postleitzahl ein (Beispiel: 90602 oder 90602-1234).
Bitte geben Sie gültige E-Mail-Adressen ein, die durch Kommas getrennt sind. Zum Beispiel [email protected], [email protected].
Bitte geben Sie eine gültige CSS-Länge ein (Beispiel: 100px, 77pt, 20em, .5ex oder 50%).
PLZ -Bereich: Ihre Postleitzahl muss im Bereich von 902xx-xxxx bis 905-xx-xxxx liegen
Bitte geben Sie eine gültige Telefonnummer ein. Zum Beispiel (123) 456-7890 oder 123-456-7890.
Vul hier een geldige datum in.
Briefe : Bitte nur Briefe
Bitte geben Sie höchstens {0} Zeichen ein.
Bitte geben Sie eine Zahl von 0 oder mehr in dieses Feld ein.
Bitte geben Sie einen gültigen Wert ein, zB 10,20,30
Bitte keinen Leerraum
Bitte Staat / Provinz auswählen.
Bitte geben Sie eine gültige URL ein. Protokoll ist erforderlich (http: //, https: // oder ftp: //).
Das Datum liegt nicht im angegebenen Bereich.
Der Wert liegt nicht innerhalb des angegebenen Bereichs.
Geben Sie einen Wert ein, der größer oder gleich {0} ist.
Leerer Wert.
Bitte geben Sie eine Zahl von 0 oder höher in dieses Feld ein.
Bitte geben Sie eine gültige Kreditkartennummer ein.
Bitte geben Sie eine gültige E-Mail-Adresse ein (Beispiel: [email protected]).
Bitte geben Sie 6 oder mehr Zeichen ein. Führende und nachfolgende Leerzeichen werden ignoriert.
Mindestlänge dieses Feldes muss mindestens% 1 Zeichen betragen. Führende und nachfolgende Leerzeichen werden ignoriert.
Bitte geben Sie 6 oder mehr Zeichen ein. Führende und nachfolgende Leerzeichen werden ignoriert.
Bitte geben Sie einen Wert ein, der kleiner oder gleich {0} ist.
Bitte geben Sie einen gültigen $ Betrag ein. Zum Beispiel $ 100.00.
Bitte geben Sie eine gültige Zeit zwischen 00:00 und 12:00 Uhr ein
Bitte verwenden Sie in diesem Feld nur Buchstaben (az oder AZ) oder Zahlen (0-9). Leerzeichen oder andere Zeichen sind nicht zulässig.
Wir erkennen oder unterstützen diesen Dateierweiterungstyp nicht.
Bitte verwenden Sie in diesem Feld nur Buchstaben (az), Zahlen (0-9) oder Unterstriche (_). Das erste Zeichen sollte ein Buchstabe sein.
Bitte geben Sie eine gültige Kreditkartennummer ein.
Bitte geben Sie {0} Wörter oder weniger ein.
Bitte geben Sie mindestens {0} Zeichen ein
Bitte verwenden Sie in diesem Feld nur Buchstaben (az oder AZ).
Ungültiges Format.
Eine positive oder negative Nicht-Dezimalzahl
Das Drehbuch:
quelle
Wenn Sie auf / customer / account / create page verweisen, sehen Sie den folgenden Code unter dem Formular:
Wenn Sie die Eingabeattribute des Formulars überprüfen, können Sie Magento 1 wie
class
Attributwerte zusammen mit neuendata-validate
Attributen sehen. Dies kann die Grundlage für eine Aufstockung sein.Schlüsseldateien für die Validierung:
https://raw.githubusercontent.com/magento/magento2/develop/lib/web/mage/validation.js
https://raw.githubusercontent.com/magento/magento2/develop/lib/web/mage/validation/validation.js
quelle
Wenn Sie UI-Komponenten verwenden , um Formulare zu erstellen, können Sie die unten stehende Validierung verwenden. Sie funktioniert in Magento 2.1.x, ich habe sie noch nicht in einer anderen Version getestet.
Beachten Sie die Validierung Artikel, darin wir hinzufügen könnten Regeln Validierung , wie
required-entry
,validate-integer
usw.Alle Prüfregeln Sie in der Datei finden konnte
vendor/magento/module-ui/view/base/web/js/lib/validation/rules.js
, wievalidate-date
,validate-emails
usw.quelle
Ich habe die gleichen Anforderungen für die Magento2-Formularüberprüfung und habe diesen Code erstellt
Zuerst richten wir ein Testformular ein
So aktivieren Sie die JavaScript-Überprüfung für die Magento2-Formularüberprüfung
Referenz :: http://www.onlinecode.org/magento2-form-validation-example/
quelle
Die Option "No-Whitespace" funktioniert nicht richtig (zumindest unter Magento 2.1). Es wird eine Fehlermeldung für jede Art von "Leerzeichen" ausgelöst. Die Werte "test me" und "test me" geben denselben Fehler zurück.
quelle