尝试创建一个“添加到购物车”按钮,其中包含要添加的项目数量,我已将<input id="product_quantity" value="1" onChange="updateQuantity()" />
添加到主form
,因此每当我更改{{1}内的值时它应该使用查询参数将表单的操作URL更新为input
字段中的相应值。
以下是HTML概述:
input
那么如何将表单的操作url参数字符串<form action="index.php?option=com_virtuemart&view=cart&task=add&virtuemart_product_id[]=1&virtuemart_category_id[]=1&quantity[]=1&format=json">
<input type="product_quantity" value="1" onChange="updateQuantity();"/>
<input type="submit" />
</form>
更改为在&quantity[]=XXX
的字段中键入的特定值?
由于
答案 0 :(得分:1)
不是将数量作为GET参数放在URL上,而是尝试使用javascript更新它,只需在输入字段上添加name=quantity
属性,它就会随表单一起发布。通常,由于您要发布表单,您可能希望将数据作为POST参数而不是get发送。看起来您正在使用PHP,因此您可以在PHP脚本中使用$_POST["quantity"]
访问您的发布变量。
<form action="index.php?option=com_virtuemart&view=cart&task=add&virtuemart_product_id[]=1&virtuemart_category_id[]=1&format=json">
<input type="text" name="quantity" value="1" onChange="updateQuantity();"/>
<input type="submit" />
</form>
我可能会将其他GET参数放在表格的隐藏字段中。
答案 1 :(得分:1)
$('#product_quantity').change(function () {
var quantity = $(this).val();
var form_url = $("form").attr("action");
form_url.replace('quantity[]=1', 'quantity[]=' + quantity)
//submit the form
$("form").submit();
});