javascript - ajax更新网址的问题
问题描述
我正在为一个shopify网站开发一个通过ajax填充的抽屉车。此购物车中还有一个带有加号和减号按钮的数量字段。这是加号按钮的代码:
// This button will increment the value
$('.ajax-cart-form').on("click",'.qtyplus.qtyplus-2', function(){
// Get the field name
fieldName = $(this).attr('field');
// Get its current value
var currentVal = parseInt($('input[id='+fieldName+']').val());
// If is not undefined
if (!isNaN(currentVal)) {
// Increment
$('input[id='+fieldName+']').val(currentVal + 1);
} else {
// Otherwise put a 0 there
$('input[id='+fieldName+']').val(0);
}
var currentVal2 = parseInt($('input[id='+fieldName+']').val());
var currentProd = $('input[id='+fieldName+']').attr('id');
$.ajax({
type: 'POST',
url: '/cart/update.js',
data: { updates: { currentProd : currentVal2 }},
dataType: 'json',
success: function() {
$.ajax({
type: 'GET',
url: '/cart.js',
async: false,
cache: false,
dataType: 'json',
success: function() {
$.getJSON(_config.shopifyAjaxCartURL, function(cart) {
$('.drawer-subtotal').remove();
$('.ajax-subtotal').css('display','none');
$(function(index, cartItem) {
var line2= index +1;
var cents2 = "";
if (cart.original_total_price % 100 < 10) {
cents2 = "0";
}
var price2 = parseInt(cart.original_total_price/100) + "." + cents2 + cart.original_total_price % 100;
$('.ajax-subtotal2').append("<div class='drawer-subtotal'><h3>Subtotal <span class='money'>£"+ price2 +" GBP</span></h3></div>");
});
$('#item_count').text(currentVal2);
});
}
});
}
});
});
如您所见,我正在获取数量字段的值,以通过变量 currentVal2 更新 ajax 发布请求中的数量。这工作正常。我还通过输入字段的 id 获取产品 ID。我试过了
alert(currentProd);
这会正确输出 ID。但是,当我尝试像这样在更新函数中使用这个变量时
data: { updates: { currentProd : currentVal2 }},
我收到未找到 update.js 的错误,因此我假设它没有正确提取产品 ID。
相反,如果我尝试
data: { updates: { 35450129542: currentVal2 }},
所以直接输入产品ID就可以了。
任何想法如何解决这一问题?
解决方案
推荐阅读
- javascript - MutationObserver 检查项目是否从 DOM 中出现或消失
- node.js - 它说项目未定义
- python - Python,拆分列表,映射函数
- syntax - 标签中带有 Traefik“@file”的 Docker-Compose
- python - tabula-py 表格读取问题
- tmux - 如何在 TMUX 会话中加载特定行?
- sql - SQL Server 索引中有两列,但只查询一列
- r - 有没有办法通过存储在 R 中另一个 DataFrame 中的唯一变量来过滤 DataFrame
- swift - 我可以从 Appearance API 中选择退出课程吗?
- php - 如何在同一个 Amazon EC2 实例中安装多个 Apache?