Kendo validator scheint Muster Attribut (regex)
<input id="myID"
name="myName"
class="form-control k-invalid"
data-bind="value: ViewModel.JobNo, visible: Layout.isEditMode"
required="required"
data-required-msg="The Job No. field is required."
pattern="\d{10}"
>
Ich habe ein Eingangselement, wie oben in einer Form ignorieren, die ich möchte Benutzer zwingen, 10-stellige Zahlen einzugeben.
ich fügen Sie einfach einen pattern = "\d{10}"
und dachte, wenn ich validator.validate()
genannt, wird die Validierung für mich behandeln, aber es scheint nicht der Fall ist, in der Tat die pattern
Regel ignoriert wird immer während der required
Regel perfekt funktioniert.
Ich habe versucht, es zu überprüfen, so opend ich Entwicklerkonsole in Chrome und typisiert die folgende:
$("#myID").kendoValidator();
$("#myID").data("kendoValidator").validate()
Wenn ich das Feld leer lassen, wird dies mir falsch geben, und sag es ist erforderlich (gut).
Aber wenn ich einige Zahlen eingegeben habe, oder irgendwelche anderen Zeichenfolgen, die das Muster verletzen sollten, gibt mir das immer noch wahr und wird die Validierung bestehen.
Was habe ich falsch gemacht, und wie kann ich erreichen, was ich wollte? Vielen Dank!
Obwohl dies keine Lösung für Ihr Gesamtproblem ist, wenn Sie möchten, dass der Benutzer nur eine 10-stellige Nummer eingibt, dann erlaubt Ihr aktueller Ausdruck 10 oder mehr Ziffern irgendwo in Ihrer Zufallszahlenfolge. Ich würde deinen Ausdruck von '\ d {10}' zu '^ \ d {10} $' –