/ / Maska wprowadzania z wartością pustą - jquery, html, twitter-bootstrap

Maska wprowadzania o wartości zwykłej - jquery, html, twitter-bootstrap

Jaki jest najlepszy sposób utworzenia maski wejściowej, która zachowa oryginalną wartość (tj. Niezamkniętą) w danych wejściowych?

Na przykład:

użyjmy maski 99999-999i numer 58398000.

To, czego chcę, to liczba wyświetlana jako:

58398-000 a wartość wejściowa jest naprawdę warta 58398000.

Potrzebuję tego, ponieważ walidacja liczy liczbę cyfr i sprawdza, czy są tylko cyfry.

A także maska ​​powinna pojawić się, gdy ładowana jest strona z ustawioną wartością wejścia.

Próbowałem tego: http://www.jasny.net/bootstrap/javascript/#inputmask

Wtyczka jasny ma 2 problemy:

  • Po pierwsze, wartość wejściowa ma na przykład separator input.val() == "58398-000"

  • Po drugie, gdy strona ładuje się z ustawioną wartością, maska ​​nie jest aktualizowana. Na przykład: <input type="text" value="58398000" class="form-control" data-mask="99999-999">w tym przypadku maska ​​nie jest wyświetlana.

P.S: Używanie bootstrap i jQuery

Odpowiedzi:

1 dla odpowiedzi № 1

Powinieneś dokonać sprawdzenia poprawności przed przesłaniemza pomocą jQuery i upewnij się, że wartość pola jest sformatowana tak, jak chcesz, lub możesz dodać wartość do danych wejściowych, która byłaby wartością rzeczywistą danych lub coś podobnego, i możesz sformatować to naKeyUp lub keyDown w polu.

Możesz użyć

$("#yourSubmitButton").on("click", function(e){
e.prevenDefault();
//Your validation
if (//Form is valid){
$("form").submit();
}
});

Wymagana dokumentacja:

Klawisz jQuery -> https://api.jquery.com/keyup/

jQuery keydown -> https://api.jquery.com/keydown/

Przesyłanie jQuery -> https://api.jquery.com/submit/

N.B: Nie zapomnij o walidacji back-endowej, aby upewnić się, że ludzie z pewnością użyli twojego formularza przed użyciem odebranych danych w bazie danych lub czegokolwiek.