我从未使用laravel发出ajax请求,因此它与普通的php不同。
这是我的脚本附在更改的下拉列表中:
function createcomploadtemplate(){
var ifprefix = $("#createcomploadtemplatedropdown").find("option:selected").text();
var getidtemplate = $('#createcomploadtemplatedropdown').val();
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$.ajax({
type: 'POST',
url: 'ajaxfixedcompany',
data: {getidtemplate:getidtemplate,ifprefix:ifprefix},
dataType: 'json',
encode : true,
success: function(data){
alert(data.success);
}
});
}
这是我的路线
Route::post('ajaxfixedcompany',['middleware' => 'auth', 'as' => 'ajaxfixedcompany', 'uses' => 'AjaxController@ajaxfixedcompany']);
这就是功能
public function ajaxfixedcompanyget(Request $request){
$response = array(
'status' => 'success',
'msg' => $request->message,
);
return response()->json($response);
}
如果我在chrome devtools中使用ajax url / ajaxfixedcompany而不是ajaxfixedcompany,我会得到“页面不存在”,错误404
没有/我得到这个:
编辑:天啊......我想我只需要休息一下。我有2个控制器。 1表示POST,1表示GET。我在我的控制器中请求POST我只创建了我的GET功能......它再次起作用。 LMFAO答案 0 :(得分:0)
您可以使用csrf令牌执行此操作。
$.ajax({
type: "POST",
url: "url/update",
dataType: 'json',
data: 'id=' + id+ '&_token={{csrf_token()}}',
希望它有所帮助。
答案 1 :(得分:0)
我只是需要休息一下。在那1小时休息之后,我回来后注意到我正在发出一个帖子请求,虽然它也在我的路线中被叫,但我的控制器中有一个错字......傻我...... lmfao