【发布时间】:2020-09-09 08:57:43
【问题描述】:
我正在尝试使用 ajax get 方法在 laravel 中获取数据。一切都很好,但是当我发出 Ajax 请求时,请求 url 会自动更改。
例如我的网址是http://localhost/project/size/。但是,当 Ajax 请求调用时,url 会像这样自动更改
http://localhost/project/size?idSize=4-small - 在显示此 404 错误之后。以及使用时
url: "{{ route('size') }}"
显示 500 内部错误。 这是我的 ajax 代码。
<script type="text/javascript">
$(document).ready(function () {
$('#selectSize').change(function () {
var idSize = $(this).val();
if (idSize == "") {
return false;
}
$.ajax({
url: '/size',
type: 'GET',
data: { idSize: idSize },
beforeSend: function (request) {
return request.setRequestHeader('X-CSRF-Token', $("meta[name='csrf-token']").attr('content'));
},
success: function (response) {
console.log(response);
alert(response);
var arr = response.split('#');
$('#getPrice').html("USD" + arr[0]);
$('#price').val(arr[0]);
if (arr[1] == 0) {
$('#cartButton').hide();
$('#Availability').text('Out Of Stock');
}
else {
$('#cartButton').show();
$('#Availability').text('In Stock');
}
},
error: function (err) {
console.log(err);
alert("Something Went Wrong, Please check again");
}
});
});
});
</script>
这是我的控制器
//Here I Am getting Product Price
public function getProductPrice(Request $request){
$data = $request->all();
print_r($data);
die();
$proArr = explode("-",$data['idSize']);
// echo $proArr[0]; echo $proArr[1];
$proAttr = ProductAttribute::where(['product_id'=>$proArr[0],'size'=>$proArr[1]])->first();
echo $proAttr->price;
echo "#";
echo $proAttr->stock;
// return $getCurrencyRates = Product::getCurrencyRates($proAttr->price);
// echo $proAttr->price."-".$getCurrencyRates['USD_Rate']."-".$getCurrencyRates['GBP_Rate']."-".$getCurrencyRates['EUR_Rate'];
// echo "#";
// echo $proAttr->stock;
}
我的路线是
Route::get('size','ProductController@getProductPrice');
【问题讨论】:
-
该路由在
api.php或web.php路由中吗?它是在某种群体中吗? -
quirel@你在吗?