Здравствуйте, подскажите пожалуйста с одним вопросом. есть проверка формы Код (Text): (function( $ ){ $(function() { $('.rf').each(function(){ var form = $(this), btn = form.find('.btn_submit'); form.find('.rfield').addClass('empty_field'); // Функция проверки полей формы function checkInput(){ form.find('.rfield').each(function(){ if($(this).val() != ''){ $(this).removeClass('empty_field'); } else { $(this).addClass('empty_field'); } }); form.find('#email').each(function(){ if($(this).val() != '') { var pattern = /^([a-z0-9_\.-])+@[a-z0-9-]+\.([a-z]{2,4}\.)?[a-z]{2,4}$/i; if(pattern.test($(this).val())){ $(this).removeClass('empty_field'); } else { $(this).addClass('empty_field'); } } else { $(this).addClass('empty_field'); } }); } // Функция подсветки незаполненных полей function lightEmpty(){ form.find('.empty_field').css({'border-color':'#d8512d'}); setTimeout(function(){ form.find('.empty_field').removeAttr('style'); },500); } setInterval(function(){ checkInput(); var sizeEmpty = form.find('.empty_field').size(); if(sizeEmpty > 0){ if(btn.hasClass('disabled')){ return false } else { btn.addClass('disabled') } } else { btn.removeClass('disabled') } },500); btn.click(function(){ if($(this).hasClass('disabled')){ lightEmpty(); return false } else { form.submit(); } }); }); }); })( jQuery ); Все работает, подсвечивается красным, но хочу добавить, что бы в значение inputa, вместо введенных юзером неверных данных появлялось сообщение, мол ведите корректный е mail, и еще хотелось бы сделать проверку занятости логина и почты. Реально через JQuerry открыть php файл передать туда логин и почту и в нем подключиться к базе, проверить и вернуть результат? спасибо!
Спасибо с 1 проблемой разобрался, осталась вторая проверить на наличие в базе. код скрипта Код (Text): form.find('#email').each(function(){ if($(this).val() != '') { var pattern = /^([a-z0-9_\.-])+@[a-z0-9-]+\.([a-z]{2,4}\.)?[a-z]{2,4}$/i; if(pattern.test($(this).val())){ checkDomain($(this).val()); } else { $(this).addClass('empty_email'); } } else { $(this).addClass('empty_field'); } }); } function checkDomain(domain) { alert(domain); $.ajax({ type:"POST", url: "domain.php", data: { domain:domain }, success: function(result) { if(result = false) { alert(result); } else { alert(result); } } }); } и код php Код (Text): <?php $domainName = $_POST['domain']; if({$domainName =="1@mail.ru"){ echo $result['true']; } ?> который допустим нашел в базе такой маил и вернул true; объясните пожалуйста куда вернул он true ? и что-то после моего шаманства, перестал входить в функцию checkDomain(); еще интересна эта строчка domain:domain, что она значит? я с jQuery не особо дружу.
Как влезть в php скрипт и взять оттуда результат я разобрался, Код (Text): form.find('#email').each(function(){ if($(this).val() != '') { var pattern = /^([a-z0-9_\.-])+@[a-z0-9-]+\.([a-z]{2,4}\.)?[a-z]{2,4}$/i; if(pattern.test($(this).val())){ checkDomain($(this).val()) } else { $(this).addClass('empty_email'); } } else { $(this).addClass('empty_field'); } }); Код (Text): function checkDomain(param1) { $.ajax({ type: "POST", url: "domain.php", data: "data=" + param1, success: function(data){ if(data=="true"){ return true; }else{ return false; } } }); } Но теперь не могу из функции checkDomain вернуть значение, то есть я пишу так Код (Text): if(checkDomain($(this).val())) { alert("true"); } и ничего не происходит, почему?
Пробовал так, тоже не выходит, подскажите пожалуйста! Код (Text): form.find('#email').each(function(){ var flag; if($(this).val() != '') { var pattern = /^([a-z0-9_\.-])+@[a-z0-9-]+\.([a-z]{2,4}\.)?[a-z]{2,4}$/i; if(pattern.test($(this).val())){ var promise = checkDomain($(this).val()); promise.success(function (data) { if (data==true){ flag=true; }else {flag=false;} }); alert(flag); } else { $(this).addClass('empty_email'); } } else { $(this).addClass('empty_field'); } }); } checkDomain = function (param1) { return $.ajax({ type: "POST", url: "domain.php", data: "data=" + param1 }); }
HTML: Код (PHP): <div class="msg"></div> JS: Код (PHP): $.post('email.php',email:'email@google.com',function(data) { if(data) { $('.msg').html(data); } }): PHP: Код (PHP): $email='email@google.com'; if(isset($_POST['email']) ) { if(empty($_POST['email']) { echo'Введите E-mail!'; } else if($_POST['email']==$email) { echo'E-mail: '.$_POST['email'].' уже существует!'; } }