javascript - 未捕获的 ReferenceError:未定义 jqXHR
问题描述
我正在尝试使用 jquery 提交登录表单(这是一个弹出 div)。如果表单验证失败,那么我只想在弹出 div 上显示错误消息,并在 ajax 调用进入错误函数时重新加载页面时停止关闭该表单(弹出)。这是我的js代码
$("#loginForm").submit(function(e) {
var email = $(".log-email").val();
var password = $(".log-pass").val();
e.preventDefault();
$.ajax({
type: "POST",
url: "/login",
dataType: "json",
data: {password:password, email:email},
success : function(data){
console.log(data);
window.location.href= data.redirecturl;
},
error:function(XMLHttpRequest,jqXHR, thrownError,ajaxOptions){
var errors = XMLHttpRequest.responseJSON;
console.log(XMLHttpRequest);
if(errors)
{
$(".login-error").text(errors.email);
$(".login-error").css("color","red");
}
// e.preventDefault();
jqXHR.error();
return false;
}
});
// .fail(function(){
// e.preventDefault();
// e.stopPropagation();
// });
});
和刀片(HTML)代码看起来像,
<form id="loginForm">
{{ Form::email('email', null, ['class' => 'vbg-input log-email', 'maxlength' => '191', 'required' => 'required', 'autofocus' => 'autofocus', 'placeholder' => trans('validation.attributes.frontend.email')]) }}
{{ Form::password('password', ['class' => 'vbg-input log-pass', 'required' => 'required', 'placeholder' => trans('validation.attributes.frontend.password')]) }}
<a href="" class="forgot-passw">Forgot Your Password?</a>
<button class="sign-in hover-animation">
<span> {{trans('labels.frontend.auth.login_button')}} </span>
</button>
</form>
我尝试了各种方法,但没有成功,没有错误。当我使用jqXHR.error(); 我能够停止关闭表单,但它在控制台中给了我一条错误消息,
Uncaught ReferenceError: jqXHR is not defined
at Object.error (script.js?v=1527662366599:148)
at fire (frontend.js?id=a613937eec44062691cf:7349)
at Object.fireWith [as rejectWith] (frontend.js?id=a613937eec44062691cf:7479)
at done (frontend.js?id=a613937eec44062691cf:13306)
at XMLHttpRequest.<anonymous> (frontend.js?id=a613937eec44062691cf:13538)
在这一点上真的卡住了。提前致谢。
解决方案
根据 jQuery 文档,请参阅http://api.jquery.com/jQuery.ajax/
错误:函数(jqXHR jqXHR,字符串 textStatus,字符串 errorThrown)
所以需要改成
error(jqXHR, textStatus, errorThrown)
推荐阅读
- api - 如何使用 Autotask API 更新 contractServices 中的 Autotasks UnitChange 字段
- java - Hibernate 嵌入一个映射的超类
- airflow - context.log_url 作为气流中的 href 不起作用
- c# - 使用 Activator.CreateInstance() 创建时未释放 Inventor COM 对象
- linux - 无法运行命令 chsh -s /bin/bash ${USERNAME}
- google-apps-script - 在谷歌脚本上使用 Oauth v2 时出错 - 在邮递员上进行测试
- laravel - Laravel - 如何验证动态输入文件中的唯一分数范围
- java - 如何使 jface 数据绑定双向工作?
- mysql - 从其他表中都可用的表中选择
- unit-testing - 登陆页面的代码质量和单元测试