o dziwo przy zalogowanym użytkowniku pobiera mi i zwraca poprawne dane ajaxem, natomiast przy niezalogowanym użytkowniku tak jakby w ogóle ajax źle pobierał dane (ale to pewno moje przeoczenie/zmeczenie),
wiec tak trochę skryptu
<!--pole formularza wygenerowanego przez cakePHP--><div class="input text"><label for="UserLogin">Login<span class="gwiazdka">*</span>:</label><input name="data[User][login]" type="text" class="{validate:{ required: true, minlength: 4 }}" maxlength="20" value="" id="UserLogin" /><span id="after_UserLogin"></span></div> <!--JS--> $(document).ready(function(){ //dodanie metody sprawdzającej czy login/email jest już w bazie $.validator.addMethod( "sprawdz", function(value) { $.ajax({ type: "POST", url: '/users/sprawdz_ajax/login/' + value, async: false, success: function(data){ alert(data); if(data == 1){//1 = true return true; }else{// !1 = false return false; } } }); }, "Podane wyrażenie juz istnieje." ); $("#rejestracja").validate({ meta: "validate", errorElement: "span", highlight: function(element, errorClass) { //$(element.form).find("span[id=after_" + element.id + "]").addClass(errorClass).removeClass(validClass); $(element.form).find("span[id=after_" + element.id + "]").addClass(errorClass); }, unhighlight: function(element, errorClass) { //$(element.form).find("span[id=after_" + element.id + "]").removeClass(errorClass).addClass(validClass); $(element.form).find("span[id=after_" + element.id + "]").removeClass(errorClass); $(element.form).find("span[id=after_" + element.id + "]").text("Poprawne"); } }); $("#UserLogin").rules("add", { sprawdz: true }); });
Utworzyłem konto L: login H: zaq
http://rj.zgo.pl/users/rej2
możliwość odpalenia recznie skryptu ajax
http://rj.zgo.pl/users/sprawdz_ajax/login/login //istnieje w bazie
http://rj.zgo.pl/users/sprawdz_ajax/login/login_zly //nie istnieje w bazie
@hehe będzie trzeba zmienić parametry@
Apropo jeszcze mnie irytują dwa małe błędy
2. w trakcie pierwszej walidacji do klasy error wysiedlają się dwie ikonki po boku tekstu, następnie po kolejnej walidacji znikają, nie wiem czym to jest spowodowane
3. Dwie linijki zakomentowane przy :unhighlight i :highlight a dokładnie nie chce mi dodać klasy
wyświetla błąd Błąd: validClass is not defined