通过laravel 5.5中的Javascript获取总值
我试图通过ajax将发货价格和我的购物车总价相加 到目前为止,我所拥有的:通过laravel 5.5中的Javascript获取总值,javascript,php,ajax,laravel,Javascript,Php,Ajax,Laravel,我试图通过ajax将发货价格和我的购物车总价相加 到目前为止,我所拥有的: 获取购物车的总价格 获取运输方式的价格清单 我要做的是将这两个值相加 示例: //Select shipping method to sum with total price of cart public function totalPriceInTotal(Request $request, $postchoose) { $totalPriceIn = $request->input('pos
//Select shipping method to sum with total price of cart
public function totalPriceInTotal(Request $request, $postchoose) {
$totalPriceIn = $request->input('postchoose');
return response()->json($totalPriceIn);
}
Route::get('/totalPriceInTotal/{postchoose}','CartController@totalPriceInTotal');
//HTML
<div class="panel-body" id="totalPriceInTotal">
</div>
//JavaScript
<script>
$(document).ready(function() {
$('select[name="postchoose"]').on('change', function() {
var destinationPrice = $(this).val();
if(destinationPrice) {
$.ajax({
url: '{{ url('totalPriceInTotal') }}/'+encodeURI(destinationPrice),
type: "GET",
dataType: "json",
success:function(data) {
$('#totalPriceInTotal').empty();
$('#totalPriceInTotal').append('<p>' + {{Cart::getTotal()}} + $totalPriceIn + '</p>');
}
});
}else{
$('#totalPriceInTotal').empty();
}
});
});
</script>
购物车总数:
20.000
运费:
10.000
总计:
30.000
我的密码
控制器:
//Select shipping method to sum with total price of cart
public function totalPriceInTotal(Request $request, $postchoose) {
$totalPriceIn = $request->input('postchoose');
return response()->json($totalPriceIn);
}
Route::get('/totalPriceInTotal/{postchoose}','CartController@totalPriceInTotal');
//HTML
<div class="panel-body" id="totalPriceInTotal">
</div>
//JavaScript
<script>
$(document).ready(function() {
$('select[name="postchoose"]').on('change', function() {
var destinationPrice = $(this).val();
if(destinationPrice) {
$.ajax({
url: '{{ url('totalPriceInTotal') }}/'+encodeURI(destinationPrice),
type: "GET",
dataType: "json",
success:function(data) {
$('#totalPriceInTotal').empty();
$('#totalPriceInTotal').append('<p>' + {{Cart::getTotal()}} + $totalPriceIn + '</p>');
}
});
}else{
$('#totalPriceInTotal').empty();
}
});
});
</script>
路线:
//Select shipping method to sum with total price of cart
public function totalPriceInTotal(Request $request, $postchoose) {
$totalPriceIn = $request->input('postchoose');
return response()->json($totalPriceIn);
}
Route::get('/totalPriceInTotal/{postchoose}','CartController@totalPriceInTotal');
//HTML
<div class="panel-body" id="totalPriceInTotal">
</div>
//JavaScript
<script>
$(document).ready(function() {
$('select[name="postchoose"]').on('change', function() {
var destinationPrice = $(this).val();
if(destinationPrice) {
$.ajax({
url: '{{ url('totalPriceInTotal') }}/'+encodeURI(destinationPrice),
type: "GET",
dataType: "json",
success:function(data) {
$('#totalPriceInTotal').empty();
$('#totalPriceInTotal').append('<p>' + {{Cart::getTotal()}} + $totalPriceIn + '</p>');
}
});
}else{
$('#totalPriceInTotal').empty();
}
});
});
</script>
查看:
//Select shipping method to sum with total price of cart
public function totalPriceInTotal(Request $request, $postchoose) {
$totalPriceIn = $request->input('postchoose');
return response()->json($totalPriceIn);
}
Route::get('/totalPriceInTotal/{postchoose}','CartController@totalPriceInTotal');
//HTML
<div class="panel-body" id="totalPriceInTotal">
</div>
//JavaScript
<script>
$(document).ready(function() {
$('select[name="postchoose"]').on('change', function() {
var destinationPrice = $(this).val();
if(destinationPrice) {
$.ajax({
url: '{{ url('totalPriceInTotal') }}/'+encodeURI(destinationPrice),
type: "GET",
dataType: "json",
success:function(data) {
$('#totalPriceInTotal').empty();
$('#totalPriceInTotal').append('<p>' + {{Cart::getTotal()}} + $totalPriceIn + '</p>');
}
});
}else{
$('#totalPriceInTotal').empty();
}
});
});
</script>
在你的成功脚本中使用这个,希望这会有所帮助
<script>
$(document).ready(function() {
$('select[name="postchoose"]').on('change', function() {
var destinationPrice = $(this).val();
if(destinationPrice) {
$.ajax({
url: '{{ url('totalPriceInTotal') }}/'+ destinationPrice,
type: "GET",
dataType: "json",
success:function(data) {
var value= parseFloat(data)+parseFloat({{Cart::getTotal()}});
$('#totalPriceInTotal').empty();
$('#totalPriceInTotal').append('<p>' + value + '</p>');
}
});
}else{
$('#totalPriceInTotal').empty();
}
});
$(文档).ready(函数(){
$('select[name=“postchose”]”)。在('change',function()上{
var destinationPrice=$(this.val();
if(目标价格){
$.ajax({
url:{{url('totalPriceInTotal')}/'+destinationPrice,
键入:“获取”,
数据类型:“json”,
成功:功能(数据){
var value=parseFloat(数据)+parseFloat({{Cart::getTotal()}});
$('totalPriceInTotal').empty();
$(“#totalPriceInTotal”).append(“”+value+””);
}
});
}否则{
$('totalPriceInTotal').empty();
}
});
}));
在你成功的脚本中使用这个,希望这会有所帮助
<script>
$(document).ready(function() {
$('select[name="postchoose"]').on('change', function() {
var destinationPrice = $(this).val();
if(destinationPrice) {
$.ajax({
url: '{{ url('totalPriceInTotal') }}/'+ destinationPrice,
type: "GET",
dataType: "json",
success:function(data) {
var value= parseFloat(data)+parseFloat({{Cart::getTotal()}});
$('#totalPriceInTotal').empty();
$('#totalPriceInTotal').append('<p>' + value + '</p>');
}
});
}else{
$('#totalPriceInTotal').empty();
}
});
$(文档).ready(函数(){
$('select[name=“postchose”]”)。在('change',function()上{
var destinationPrice=$(this.val();
if(目标价格){
$.ajax({
url:{{url('totalPriceInTotal')}/'+destinationPrice,
键入:“获取”,
数据类型:“json”,
成功:功能(数据){
var value=parseFloat(数据)+parseFloat({{Cart::getTotal()}});
$('totalPriceInTotal').empty();
$(“#totalPriceInTotal”).append(“”+value+””);
}
});
}否则{
$('totalPriceInTotal').empty();
}
});
}));
假设
$totalPriceIn
是由模板引擎提供的,下面是可能的工作方式。我正在使用本地存储
$(document).ready(function() {
if(!localStorage.getItem('cartTotal')) {
var cartTotal = {{Cart::getTotal()}};
localStorage.setItem('cartTotal', cartTotal);
}
$('select[name="postchoose"]').on('change', function() {
var destinationPrice = $(this).val();
if(destinationPrice) {
$.ajax({
url: '{{ url('totalPriceInTotal') }}/'+encodeURI(destinationPrice),
type: "GET",
dataType: "json",
success:function(data) {
var cartTotalPrice = parseFloat(localStorage.getItem('cartTotal'));
$('#totalPriceInTotal').empty();
$('#totalPriceInTotal').append('<p>' + (cartTotalPrice + parseFloat(data)) + $totalPriceIn + '</p>');
localStorage.removeItem('cartTotal');
}
});
}else{
$('#totalPriceInTotal').empty();
}
});
});
$(文档).ready(函数(){
如果(!localStorage.getItem('cartTotal')){
var cartotal={{Cart::getTotal()}};
setItem('cartTotal',cartTotal);
}
$('select[name=“postchose”]”)。在('change',function()上{
var destinationPrice=$(this.val();
if(目标价格){
$.ajax({
url:{{url('totalPriceInTotal')}/'+encodeURI(destinationPrice),
键入:“获取”,
数据类型:“json”,
成功:功能(数据){
var cartotalprice=parseFloat(localStorage.getItem('cartotal');
$('totalPriceInTotal').empty();
$(“#totalPriceInTotal”)。追加(“”+(cartTotalPrice+parseFloat(数据))+$totalPriceIn+”);
localStorage.removietem('cartotal');
}
});
}否则{
$('totalPriceInTotal').empty();
}
});
});
假设$totalPriceIn
是由模板引擎提供的,下面是可能的工作方式。我正在使用本地存储
$(document).ready(function() {
if(!localStorage.getItem('cartTotal')) {
var cartTotal = {{Cart::getTotal()}};
localStorage.setItem('cartTotal', cartTotal);
}
$('select[name="postchoose"]').on('change', function() {
var destinationPrice = $(this).val();
if(destinationPrice) {
$.ajax({
url: '{{ url('totalPriceInTotal') }}/'+encodeURI(destinationPrice),
type: "GET",
dataType: "json",
success:function(data) {
var cartTotalPrice = parseFloat(localStorage.getItem('cartTotal'));
$('#totalPriceInTotal').empty();
$('#totalPriceInTotal').append('<p>' + (cartTotalPrice + parseFloat(data)) + $totalPriceIn + '</p>');
localStorage.removeItem('cartTotal');
}
});
}else{
$('#totalPriceInTotal').empty();
}
});
});
$(文档).ready(函数(){
如果(!localStorage.getItem('cartTotal')){
var cartotal={{Cart::getTotal()}};
setItem('cartTotal',cartTotal);
}
$('select[name=“postchose”]”)。在('change',function()上{
var destinationPrice=$(this.val();
if(目标价格){
$.ajax({
url:{{url('totalPriceInTotal')}/'+encodeURI(destinationPrice),
键入:“获取”,
数据类型:“json”,
成功:功能(数据){
var cartotalprice=parseFloat(localStorage.getItem('cartotal');
$('totalPriceInTotal').empty();
$(“#totalPriceInTotal”)。追加(“”+(cartTotalPrice+parseFloat(数据))+$totalPriceIn+”);
localStorage.removietem('cartotal');
}
});
}否则{
$('totalPriceInTotal').empty();
}
});
});
是$totalpricin
声明的javascript变量,还是由laravel生成的?是由laravel控制器函数生成的
@CholNhial有什么想法吗?您可以使用本地存储来存储购物车总计,然后,您需要使用parseFloat
解析返回的值,我将发布答案。您混合使用Laravel和AJAX调用不是很好。但也许您应该这样做:$('totalPriceInTotal').append('p>'+data+destinationPrice+'')
因为这两个值都已经在浏览器端了。在那里声明的javascript变量是$totalPriceIn
还是由laravel生成的?是由laravel控制器函数生成的
@CholNhial有什么想法吗?您可以使用本地存储来存储购物车总计,然后,您需要使用parseFloat
解析返回的值,我将发布答案。您混合使用Laravel和AJAX调用不是很好。但也许您应该这样做:$('totalPriceInTotal').append('p>'+data+destinationPrice+'')因为这两个值都已经在浏览器端了。ReferenceError:$totalPriceIn没有定义
另一件事,我的{{Cart::getTotal()}发生了什么?我看到:),我得到了undefined24524
其中24524是我的totalcart
,而undefined是37000
@mafortis in in in in success alert(data.totalPriceIn)你是什么getting@mafortis为了感谢我投票表决我的答案,这将帮助其他参考错误:$totalPriceIn未定义
另一件事,我的{{Cart::getTotal()}发生了什么?我看到:),我得到了未定义24524
其中24524是我的totalcart
,未定义的是37000
@mafortis in success alert(data.totalpricin)你是什么getting@mafortis为了感谢我投票支持我的答案,这将帮助其他{{{Cart::getTotal()}
来自我的购物车,包数据存储在会话中,我不认为我是否需要再次存储它。您认为如何?包
然后我认为如果您想要的是({{cart::getTotal()}+parseFloat(数据))
你仍然认为我应该再次存储我的cartTotal?如果它可以在不使用本地存储的情况下工作,那就试试吧。我会试试的。{{