为什么我无法收到Ajax请求?我有一个带有create()
方法的ProductController。
public function create(Request $request)
{
$value = $request->get('keyname') ? $request->get('keyname') : 1;
$companies = Company::all();
$categories = Company::find($value)->categories;
return view('admin.pages.createProduct', compact('categories', 'companies'));
}
我有两个选择输入:第一个是公司列表,第二个是取决于公司选择的类别,因为每个公司都有不同的类别。
Ajax请求
$(document).ready(function () {
$("#company").change(function () {
var select = $('#company').find(":selected").val();
$.ajax({
url: "{{ route('product.create') }}",
method: 'PUT',
dataType: 'text',
data: {
keyname: select,
_token: '{{csrf_token()}}'
}, success: function (response) {
console.log(select);
}
});
});
});
但是,$request->get('keyname')
没有获得select
的值。
答案 0 :(得分:0)
在您的控制器存储方法中尝试
public function store(Request $request)
{
$value = $request->get('keyname')?$request->get('keyname'):1;
$companies = Company::all();
$categories = Company::find($value)->categories;
return view('admin.pages.createProduct',compact('categories','companies'));
}
在您的ajax方法中,
$(document).ready(function() {
$("#company").change(function(){
// var select = $('#company').find(":selected").val();
var select = $('#company :selected').val();
$.ajax({
url: '{{ route("product.store") }}',
type: 'POST',
data: {
keyname: select,
_token: '{{csrf_token()}}'
}, success: function (response) {
console.log(select);
}
});
});
});