0

我在订单中添加了一个数量字段,其中向卡片添加项目是通过这种方式完成的:

        function updateArchive(id,quant) {
    jQuery.ajax({
        type: "POST",
        url: "' . GBC_PLUGIN_URL . '/includes/gb-order.php",
        data: { "gbID": id , "qtty": quant },
        success: function(data){
            alert("' . __('Item added successfully!', 'gbcart') . '");
        },
        error: function(data){ 
            alert("' . __('This item already exists!', 'gbcart') . '");
        },
    });
}

放入购物车的物品的数量是用“quant”设置的,好吧,这是我的问题:

函数“updateArchive”使用以下命令启动:

    <td class="basket"><a href="#" class="gb-button" onclick="updateArchive(125,5); return false;">' . __('Auf die Bestellliste', 'gbcart') . '</a></td>

我唯一需要动态更改的是上面示例中的数字“5”。

当我在输入中插入一个数字时,这个数字需要出现而不是“5”。

4

2 回答 2

1

尝试这个:

function updateArchive(id) {
    var quant = $('input').val();
    jQuery.ajax({
        type: "POST",
        url: "' . GBC_PLUGIN_URL . '/includes/gb-order.php",
        data: { "gbID": id , "qtty": quant },
        success: function(data){
            alert("' . __('Item added successfully!', 'gbcart') . '");
        },
        error: function(data){ 
            alert("' . __('This item already exists!', 'gbcart') . '");
        },
    });
}

将 更改$('input')为首选类/id。

于 2013-08-23T22:18:07.233 回答
0

你应该避免像这样将 javascript 放在你的元素中。尝试使用点击监听器:

HTML:

<td class="basket"><a href="#" class="gb-button" data-id="125">' . __('Auf die Bestellliste', 'gbcart') . '</a>
</td>
<input id="myinput" />

JS:(必须在此代码之前加载 DOM,最好的方法是将其包装在 内$(document).ready( function() { [here] });

$(".gb-button").click(function (e) {
    e.preventDefault(); //to prevent default action of anchor
    var id = $(this).attr("data-id");
    var quant = $("#myinput").val();
    alert("id = "+id+", quant = "+quant); // to see it works
/*  jQuery.ajax({
     ... your code here
    });*/
});

小提琴

于 2013-08-23T22:25:48.777 回答