У меня есть форма и поля Name, Mobile, Email and Message
.Я использую проверку JQuery.Нет проблем с проверкой Jquery.Я получаю сообщение об ошибке проверки на стороне сервера.
Я отправляю форму, используя AJAX, и отображаю сообщение об ошибке сервера, используя ответ JSON.
Это также работает отлично, но проблема в том, что яЯ не могу удалить сообщение об ошибке на стороне сервера, когда пользователь вводит значение.
Если поле Name
пусто, оно отображает сообщение об ошибке, но после ввода имени оно все еще отображает сообщение об ошибке.
Проверьте, когда поле Имя пусто, и отображается проверка на стороне сервера.
![enter image description here](https://i.stack.imgur.com/oozM8.png)
После ввода имени по-прежнему отображается сообщение об ошибке.
![enter image description here](https://i.stack.imgur.com/zDZ4i.png)
Не могли бы вы помочь мне в этом вопросе?
AJAX
$("#form").validate({
rules: {
name:{
required:true,
minlength:3,
lettersonly: true
},
mobileno:{
required:true,
minlength:10,
maxlength:10,
number: true
},
email:{
required:true,
email:true
},
message:{
minlength:10
}
},
highlight: function(element) {
$(element).removeClass("error");
},
submitHandler: function(form) {
//form.submit();
$.ajax({
url: "process.php",
type: "POST",
data: $('#form').serialize(),
success: function (data) {
var response = JSON.parse(data);
if (response.error_no === '1'){
$('#errorname').html(response.error);
}
else if (response.error_no === '2'){
$('#errorMobile').html(response.error);
}
else if(response.error_no === '3'){
$('#errorEmail').html(response.error);
}
else if(response.error_no === '4'){
alert(response.error);
}
else{
$("#popup_verify-1").hide();
$("#popup_success-1").show();
$('#form')[0].reset();
}
},
error: function (jXHR, textStatus, errorThrown) {
alert(errorThrown);
}
}); // AJAX Get Jquery statment
}
});
Process.php
$name=$conn->real_escape_string(trim($_POST['name']));
$mobileno=$conn->real_escape_string(trim($_POST['mobileno']));
$email=$conn->real_escape_string(trim($_POST['email']));
$message=$conn->real_escape_string(trim($_POST['message']));
$ipaddress=$_SERVER['REMOTE_ADDR'];//ip address
if($name =="") {
$errorMsg[]= "You did not enter a name.";
$code= "1" ;
}
elseif($mobileno == "") {
$errorMsg[]= "Please enter number.";
$code= "2";
}
elseif(is_numeric(trim($mobileno)) == false){
$errorMsg[]= "Please enter numeric value.";
$code= "2";
}elseif(strlen($mobileno)<10){
$errorMsg[]= "Number should be ten digits.";
$code= "2";
}elseif($email == ""){
$errorMsg[]= "You did not enter a email.";
$code= "3";
} //check for valid email
elseif(!preg_match("/^[_\.0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[a-zA-Z]{2,6}$/i", $email)){
$errorMsg[]= 'You did not enter a valid email.';
$code= "3";
}
else{
$sql="INSERT INTO contactus (name, mobileno, email, message, date_of_contact,ipaddress) VALUES (?, ?, ?, ?,?,?)";
if ($stmt = $conn->prepare($sql)) {
$stmt->bind_param("ssssss", $name, $mobileno, $email, $message, $currentdate, $ipaddress);
$stmt->execute();
$errorMsg[]=1;
}
else{
$code= "4";
$errorMsg[]='Poor Network Connection';
}
$stmt->close();
$conn->close();
}
$respnonse['error_no']=$code;
$respnonse['error']=$errorMsg;
echo json_encode($respnonse);