Php ajax表单在'之后;提交';验证错误

Php ajax表单在'之后;提交';验证错误,php,ajax,forms,Php,Ajax,Forms,我已经使用ajax和php创建了一个表单。初始加载和在表单中输入值都可以正常工作,但出现错误的地方是在按下submit按钮之后。以下是表单的标记以及ajax和php处理程序: 表格的相关部分: <form id="edit_time"> <!-----form fields here----!> <button class="saveRecurrence" type="button" onclick="editTimeDriver('.$_GET['driv

我已经使用ajax和php创建了一个表单。初始加载和在表单中输入值都可以正常工作,但出现错误的地方是在按下submit按钮之后。以下是表单的标记以及ajax和php处理程序:

表格的相关部分:

<form id="edit_time">

 <!-----form fields here----!>


<button class="saveRecurrence" type="button" onclick="editTimeDriver('.$_GET['driver_id'].')">Save</button>

现在由于某种原因,如果
date\u from
字段留空,并且表单已提交,它不会返回错误消息,而是返回成功消息。有人能告诉我为什么它没有读取错误吗?

用这个来更改代码

onclick="editTimeDriver('<php echo $_GET['driver_id'] ?>'); return false;"
onclick=“editTimeDriver(“”);返回false
returnfalse
语句阻止使用http提交表单(因为您希望发送ajax请求)

你在哪里用你的
$\u GET['driver\u id']

不要忘记php正在运行服务器端

$json = array();


 if(!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {

$date_from = tep_db_prepare_input($_POST['date_from']);


if (preg_match("/^([0-9]{4})-([0-9]{2})-([0-9]{2})$/", $date_from)) {

$json['error']['date_from'] = 'Start Date is not valid!';
}



if (isset($json['error']) and !empty($json['error'])){

    $json['status'] = 'error';

    $json['message'] = 'Please check your error(s)!';

}else{

    $json['status'] = 'success';

    $json['message'] = 'Time Data has been successfully updated!';

}
}

echo json_encode($json);
onclick="editTimeDriver('<php echo $_GET['driver_id'] ?>'); return false;"