Social Security Number-input-Validierung
Habe ich dieses Beispiel:
HTML-CODE:
<input class="required-input" id="ssn" maxlength="9" type="text" name="ssn" placeholder="123-45-6789">
CODE CSS:
.valid{
border:1px solid blue;
}
.invalid{
border:1px solid red;
}
CODE JS:
function ssnFormat(){
$("#ssn").on('blur change', function () {
text = $(this).val().replace(/(\d{3})(\d{2})(\d{4})/, "$3-$2-$4");
if ($(this).val() == '' || $(this).val().match(text) || $(this).val().length == 0) {
$(this).removeClass('valid').addClass('invalid');
}else {
$(this).removeClass('invalid').addClass('valid');
}
});
}
$( "#ssn" ).on('blur change', function() {
ssnFormat();
});
Was ich will, diese Dinge zu tun sind:
1.Wenn ich schreiben Sie den folgenden text, den ich prüfen will dieses format 123-12-1234
2.Wenn ich Schreibe 123456789
ich verändern wollen, wenn Sie außerhalb input in diesem format
123-12-1234
Versuchte ich dies mit Hilfe der Funktion unten, aber nicht arbeiten
$("#ssn").on("click", function() {
var thisVal = $(this).val();
var value = thisVal.replace(/[^\/\d]/g,''); //here is a problem
$(this).val(value);
});
Können Sie mir bitte helfen, dieses problem lösen?
Vielen Dank im Voraus!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen, diese
JS:
CSS:
HTML:
Gibt es auch eine andere Art und Weise durchzusetzen, die Benutzer immer wieder in diese Muster -
.
im code nachthisVal
, die ich eingereicht habe, eine Bearbeitung.new RegExp("\\d{3}[\-]\\d{2}[\-]\\d{4}")
JS:
CSS:
HTML: