Php 处理Ajax时出错";“完成”;及;失败;
我遇到了一个奇怪的问题 预期的行为是:如果请求成功,页面将显示一个简单的警报(只是为了测试它是否工作)。如果失败,它应该在div中显示错误消息Php 处理Ajax时出错";“完成”;及;失败;,php,ajax,laravel,Php,Ajax,Laravel,我遇到了一个奇怪的问题 预期的行为是:如果请求成功,页面将显示一个简单的警报(只是为了测试它是否工作)。如果失败,它应该在div中显示错误消息 $(function() { $('.error').hide(); $("#form").on('submit', function(e) { e.preventDefault(); $.ajaxSetup({ headers: { 'X-CSRF
$(function() {
$('.error').hide();
$("#form").on('submit', function(e) {
e.preventDefault();
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$.ajax({
type: 'POST',
data: $(this).serialize(),
url: '{{ route("admin.categories.store") }}'
})
.done(function(data) {
$('.error').hide();
alert(data.message.name); //simple alert just to check if it works
})
.fail(function(jqXHR) {
errorMessage = jqXHR.responseText;
$('.error').text(errorMessage . "<br>"); // not sure why this line is making the DONE part stop working.
$('.error').show();
});
});
});
$(函数(){
$('.error').hide();
$(“#表格”)。关于('submit',函数(e){
e、 预防默认值();
$.ajaxSetup({
标题:{
'X-CSRF-TOKEN':$('meta[name=“CSRF-TOKEN”]).attr('content'))
}
});
$.ajax({
键入:“POST”,
数据:$(this).serialize(),
url:“{route(“admin.categories.store”)}”
})
.完成(功能(数据){
$('.error').hide();
警报(data.message.name);//简单的警报,只是为了检查它是否有效
})
.失败(功能(jqXHR){
errorMessage=jqXHR.responseText;
$('.error').text(errorMessage。“
”);//不确定此行为什么使完成的部分停止工作。
$('.error').show();
});
});
});
如果我让它失败,它会工作,但在成功的情况下,它只会返回原始json:
{“message”:{“_token”:“lkqlTHGPQBWEVIAQvO8pWs8ORAsSifGyR2TDBEPo”,“name”:“test”,“submit”:“Create”
类别“}”
我注意到如果我删除$('.error').text(errorMessage.“
”)代码>部分,错误消失,“成功”场景工作
有什么想法吗?替换
$('.error').text(errorMessage . "<br>");
$('.error').text(errorMessage.“
”);
到
$('.error').text(errorMessage+“
”);
哇,我简直不敢相信我做了这件事。整个php,js的混合似乎让我着迷!非常感谢。
$('.error').text(errorMessage + "<br>");