Проверка формы перед отправкой http://bologer.ru/jquery-proverka-formy-s-pomoshhyu/ http://dev.bologer.ru/demo/formval/demos/demoValidators.html# http://chelnavka.ru/members/page__sort_key__members_display_name__sort_order__asc__max_results__20__quickjump__H__name_box__begins__name__H__quickjump__C
<!--не забываем подключить стили, скрипты и jquery-->
<link rel="stylesheet" href="../css/validationEngine.jquery.css" type="text/css"/>
<script src="../js/jquery-1.8.2.min.js" type="text/javascript">
</script>
<script src="../js/languages/jquery.validationEngine-ru.js" type="text/javascript" charset="utf-8">
</script>
<script src="../js/jquery.validationEngine.js" type="text/javascript" charset="utf-8">
</script>
<!--Проверка совпадения пароля происходит по id первого поля -->
class="validate[required,equals[password]] text-input"
<!--Пример инпута для проверки имя ajax ом -->
<input value="" class="validate[required,ajax[ajaxNameCall]] text-input" type="text" name="firstname"/>
<!--Далее в файле jquery.validationEngine-ru.js прописываем правило в котором хранится имя и путь до php файла-->
<!--Эта часть отвечает за ajax к файлу ajaxValidateName.php , имя ajaxNameCall должно совпадать с именем в классе инпута-->
"ajaxNameCall": {
// remote json service location
"url": "/ajax/ajaxValidateName.php",
// error
"alertText": "* Это имя уже занято",
// if you provide an "alertTextOk", it will show as a green prompt when the field validates
"alertTextOk": "* Это имя доступно",
// speaks by itself
"alertTextLoad": "* Проверка, подождите..."
},
// Для кнопки submit onclick="validForm()"
function validForm() {
jQuery('.validForm').validationEngine('validate');
}
//Инициализируем скрипт проверки формы с class="validForm"
$(function(){
$(".validForm").validationEngine('attach', {promptPosition : "centerRight", scroll: false});
});
<?php
//Пример php файла
/* RECEIVE VALUE */
$validateValue=$_REQUEST['fieldValue'];
$validateId=$_REQUEST['fieldId'];
$validateError= "This username is already taken";
$validateSuccess= "This username is available";
/* RETURN VALUE */
$arrayToJs = array();
$arrayToJs[0] = $validateId;
if($validateValue =="duncan"){ // validate??
$arrayToJs[1] = true; // RETURN TRUE
echo json_encode($arrayToJs); // RETURN ARRAY WITH success
}else{
for($x=0;$x<1000000;$x++){
if($x == 990000){
$arrayToJs[1] = false;
echo json_encode($arrayToJs); // RETURN ARRAY WITH ERROR
}
}
}
?>