我的验证错误显示,但如果填写字段并提交,没有任何反应。我猜jQuery中的某些错误,但我似乎无法看到它。我也包括了附加新闻ajax.php成功提交时成功消息不会触发
$(document).ready(function(){
$('form').submit(function(e){
e.preventDefault();
var form = $("#form1").serialize();
$.ajax({
url: 'functions/add-news-ajax.php',
type: 'POST',
dataType: 'json',
data: form,
})
.done(function (data) {
if (!data.success) {
if(data.errors.n_title) {
$("#title-error").hide().html(data.errors.n_title).fadeIn();
}
} else {
alert(data.message);
}
})
.fail(function (jqXHR, textStatus, errorThrown) {
console.log(textStatus + ': ' + errorThrown);
});
});
});
这里的代码是从AJAX调用PHP:
$errors = array();
$response = array();
if(empty($_POST['n_title'])) {
$errors['n_title'] = "<div class='alert alert-danger'> Title required </div>";
}
$response['errors'] = $errors;
if($errors) {
$message['success'] = false;
$response['message'] = "fail";
} else {
$message['success'] = true;
$response['message'] = "Success, yay!";
}
echo json_encode($response);
你得到任何错误日志尝试添加'的console.log(数据)?; '.done(函数(data){'line。 –
Get:Object {errors:Array(0),message:“Success!”} – Jonathan
如果这是数据,那么如何访问数据。成功'? –