我是ajax的新手,我试过this教程,但我得到500 jquery.min.js:4(内部服务器错误),我没有任何想法解决这个问题,这里是代码:
观点:
<div class="secure">Secure Login form</div>
{!! Form::open(array('url'=>'account/login','method'=>'POST', 'id'=>'myform')) !!}
<div class="control-group">
<div class="controls">
{!! Form::text('email','',array('id'=>'','class'=>'form-control span6','placeholder' => 'Email')) !!}
</div>
</div>
<div class="control-group">
<div class="controls">
{!! Form::password('password',array('class'=>'form-control span6', 'placeholder' => 'Please Enter your Password')) !!}
</div>
</div>
{!! Form::button('Login', array('class'=>'send-btn')) !!}
{!! Form::close() !!}
jquery:
<script type="text/javascript">
$(document).ready(function(){
$('.send-btn').click(function(){
$.ajax({
url: 'login',
type: "post",
cache: false,
data: {'email':$('input[name=email]').val(), '_token':
$('input[name=_token]').val()},
success: function(data){
alert(data);
}
});
});
});
</script>
控制器:
public function login() {
// Getting all post data
if(Request::ajax()) {
$data = Input::all();
print_r($data);die;
}
}
路线:
Route::get('account/login', function() {
return View::make('login');
});
Route::post('account/login', 'AccountController@login');
答案 0 :(得分:0)
我相信你得到500个错误代码,因为你没有用你的ajax请求发送任何csrf令牌,请在你的javascript中试试这个
$('.send-btn').click(function(){
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$.ajax({
url: 'login',
type: "post",
cache: false,
data: {'email':$('input[name=email]').val(), '_token':
$('input[name=_token]').val()},
success: function(data){
alert(data);
}
});
});
如果这项工作有效,您应该打开控制台 - >网络 - >点击您的请求并给我们回复预览,以便我们为您提供帮助