Javascript ajax验证登录不需要';t秀
我使用的是Laravel4,我试图通过使用ajax显示登录验证。我有以下javascript验证:Javascript ajax验证登录不需要';t秀,javascript,ajax,laravel,Javascript,Ajax,Laravel,我使用的是Laravel4,我试图通过使用ajax显示登录验证。我有以下javascript验证: jQuery('#form-signin').submit(function() { var url = $(this).attr("action"); jQuery.ajax({ url: url, type: "post", data: jQuery('#form-signin').serialize(), dat
jQuery('#form-signin').submit(function()
{
var url = $(this).attr("action");
jQuery.ajax({
url: url,
type: "post",
data: jQuery('#form-signin').serialize(),
datatype: "json",
beforeSend: function()
{
jQuery('#ajax-loading').show();
jQuery(".validation-error-inline").hide();
}
})
.done(function(data)
{
$('#validation-login').empty()
if (data.validation_failed === 1)
{
var arr = data.errors;
alert(arr);
}
else {
window.location = data.redirect_to;
}
})
.fail(function(jqXHR, ajaxOptions, thrownError)
{
alert('No response from server');
});
return false;
});
在我的userController中:
public function doLogin() {
Input::flash();
$data = [
"errors" => null
];
if (Auth::attempt(array('email' => Input::get('email'), 'password' => Input::get('password')))) {
return Response::json(["redirect_to" => "/"]);
} else {
if (Request::ajax()) {
$response_values = array(
'validation_failed' => 1,
'errors' => 'Invalid username or password',
);
return Response::json($response_values);
}else
{
echo 'error';
}
}
}
问题是它总是显示“错误”消息,这意味着没有执行jaax请求。有什么问题吗?在doLogin()函数中,请尝试
return Response::json(array(
'validation_failed' => 1,
'errors' => 'Unknow error'
))
而不是
echo "error"
显示此{“validation_failed”:1,“errors”:“Unknow error”}如果发送前出现任何错误,请尝试在浏览器中调试提交回调。。。。另外,请尝试这个jQuery('#form signin').submit(函数(事件){event.preventDefault();event.stopPropagation();……代码浏览器的其余部分没有显示错误,我也尝试了您的代码和相同的方法:/try jQuery('#form signin').submit(函数(事件){alert(“from submit”);…如果警报正在工作,那么我不知道,如果警报没有工作,那么您应该检查jQuery选择器是否与html中的id匹配。