Wie validiere ich den Mustervergleich in Textarea?
Wenn ich die textarea.checkValidity() oder textarea.Gültigkeit.gültig in javascript mit einem ungültigen Wert diese beiden immer true zurückgeben, was mache ich falsch?
<textarea name="test" pattern="[a-z]{1,30}(,[a-z]{1,30})*" id="test"></textarea>
jQuery('#test').on('keyup', function() {
jQuery(this).parent().append('<p>' + this.checkValidity() + ' ' +
this.validity.patternMismatch + '</p>');
});
http://jsfiddle.net/Riesling/jbtRU/9/
InformationsquelleAutor der Frage Riesling | 2012-11-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
HTML5
<textarea>
- element nicht unterstütztpattern
Attribut.Sehen die MDN doc für zulässig
<textarea>
Attribute.Können Sie festlegen müssen diese Funktionalität selbst.
Folgen oder das traditionelle HTML-4-Praxis von der Definition einer JavaScript - /jQuery-Funktion, dies zu tun.
InformationsquelleAutor der Antwort Dipesh Shah
Implementieren Sie können dies selbst mit
setCustomValidity()
.Diese Weise
this.checkValidity()
Antworten, was Regel, die Sie anwenden möchten, zu Ihrem element.Ich glaube nicht, dass
this.validity.patternMismatch
können manuell eingestellt, aber Sie können Ihre eigenen Anwesen statt, wenn Sie gebraucht werden.http://jsfiddle.net/yanndinendal/jbtRU/22/
InformationsquelleAutor der Antwort Yann Dìnendal
Damit wird die
pattern
- Attribut auf alle Texteingabefelder in den DOM und trigger die Html5-Validierung. Es berücksichtigt auch die Muster, die die^
oder$
Betreiber und führt eine Globale übereinstimmung mit derg
Regex Flagge:InformationsquelleAutor der Antwort dwkd