使用laravel使用ajax以模式提交表单
我试图通过一个加载在modal中的表单上传文本和文件,并使用ajax提交(我使用的是laravel5.2),但我不明白为什么它不起作用。我尝试了许多在这里找到的解决方案,并通过搜索引擎找到了 简单表单(此表单以模式加载) 路线使用laravel使用ajax以模式提交表单,ajax,forms,bootstrap-modal,laravel-5.2,Ajax,Forms,Bootstrap Modal,Laravel 5.2,我试图通过一个加载在modal中的表单上传文本和文件,并使用ajax提交(我使用的是laravel5.2),但我不明白为什么它不起作用。我尝试了许多在这里找到的解决方案,并通过搜索引擎找到了 简单表单(此表单以模式加载) 路线 Route::post('register',[ 'uses' => 'AdminController@postRegister', 'as' => 'postRegister']); 控制器//只是想让它正常工作 publ
Route::post('register',[
'uses' => 'AdminController@postRegister',
'as' => 'postRegister']);
控制器//只是想让它正常工作
public function postRegister(Request $request)
{
return "success";
}
您的问题可能是由于您的AJAX应该使用控制器返回JSON响应 请尝试以下操作:
public function postRegister(Request $request)
{
return response()->json(['success' => 'success']);
}
通过以上操作,您现在可以访问视图中的对象
另外,记住在AJAX中传递CSRF令牌。当我使用AJAX时,我通常会在视图中添加该变量,并将该变量传递给数据,如下所示:
<script>
var token = '{{ Session::token() }}';
</script>
$.ajax({
url: 'register',
type: 'POST',
data: {variable1: variable1, variable2: variable2, _token: token},,
success: function(msg){
alert(msg);
}
contentType: false,
processData: false
});
var-token='{{Session::token()}}';
$.ajax({
url:'注册',
键入:“POST”,
数据:{variable1:variable1,variable2:variable2,_-token:token},,
成功:功能(msg){
警报(msg);
}
contentType:false,
processData:false
});
“不工作”无法帮助我们理解您的问题如果我知道问题的原因,我会告诉您,但在这种情况下,我的控制器根本没有被调用。使用chrome,按f12切换到网络选项卡,提交表单,查看您得到的错误可能是CORS错误。请检查浏览器开发控制台日志并还原
public function postRegister(Request $request)
{
return response()->json(['success' => 'success']);
}
<script>
var token = '{{ Session::token() }}';
</script>
$.ajax({
url: 'register',
type: 'POST',
data: {variable1: variable1, variable2: variable2, _token: token},,
success: function(msg){
alert(msg);
}
contentType: false,
processData: false
});