Может кто нибудь поможет решить мою проблему.
Этот скрипт работает нормально но есть одна проблема. К соответствующей форме ( if(res == 'no') ) добавляет класс \\\ .addClass('error') \\\, но не выводить сообшение \\\ .append($error.clone().text("this login is busy")) \\\, на -34 строке , ( на -14 строке все работает хорошо).
прошу подскажите.
спасибо.
$(document).ready(function() {
$('.btn-submit').click(function(e){
var $formId = $(this).parents('form');
var formAction = $formId.attr('action');
var $error = $('<span class="error"></span>');
var res;
$('li',$formId).removeClass('error');
$('span.error').remove();
$('.required',$formId).each(function(){
var inputVal = $(this).val();
var $parentTag = $(this).parent();
if(inputVal == ''){
$parentTag.addClass('error').append($error.clone().text('enter some text'));
}
//---------------------------------------------------------------------------------------------------
if($(this).hasClass('login') == true){
login = $("#login").val();
$.ajax({
url: "testing.php",
type: "POST",
data: "login=" + login,
cache: false,
success: function(response){
if (response == "no"){
res = 'no';
}
result();
}
});
}
function result() {
if(res == 'no'){
$parentTag.addClass('error').append($error.clone().text("this login is busy"));
}
}
//---------------------------------------------------------------------------------------------------
});
if ($('span.error').length > 0) {
$('span.error').each(function(){
var distance = 5;
var width = $(this).outerWidth();
var start = width + distance;
$(this).show().css({
display: 'block',
opacity: 0,
right: -start+'px'
})
.animate({
right: -width+'px',
opacity: 1
}, 'slow');
});
} else {
$formId.submit();
}
e.preventDefault();
});
$('.required').focus(function(){
var $parent = $(this).parent();
$parent.removeClass('error');
$('span.error',$parent).fadeOut();
});
});