Potrzebuję, aby użytkownicy mogli tworzyć częściowe adresy URL bez konieczności wpisywania pełnego adresu URL za każdym razem.Jak rozszerzyć sprawdzanie adresów URL jquery.validate?
Załóżmy na przykład, że planuję adres URL: www.example.com/areas/{userinput}/home
. Chcę, aby użytkownik mógł wprowadzić tekst w polu tekstowym i chcę sprawdzić, czy jest to poprawny adres URL.
adres URL Validator funkcje takie jak ten:
url: function(value, element) {
return this.optional(element) || /giantregex/.test(value);
}
Mam próbowano dodanie metody weryfikacji poprawności walidatora poprzez następujący:
$.validator.addMethod("exturl", function(value) {
return $.validator.methods.url.call($.validator, "http://www.example.com/areas/" + value + "/home");
});
jednak, gdy formularz jest zatwierdzony i moim rozszerzeniem jest wywoływany, ciągle pojawia się ten błąd:
Uncaught TypeError: Object function (d,a){this.settings=b.extend(true,{},b.validator.defaults,d);this.currentForm=a;this.init()} has no method 'optional'
optional
wygląda na metodę na obiekcie $.validator
, ale nie mogę się dowiedzieć, jak wywołać metodę adresu URL sprawdzania poprawności.
jeśli (!/^ (Https? | Ftp): \/\ // i.test (val)) {Ta linia jest komentowana z powodu // – Sam
Tak więc nie ma możliwości powyższego działa dokładnie – Sam
Ten kod nie działa. –