Javascript 通过在文本框中输入多个产品ID向购物车添加多个产品
我正在Magento中开发一个选项,客户可以在文本框中输入多个产品ID,并将其添加到购物车中。 通过使用以下jquery,我只能够在输入框中输入一个产品IDJavascript 通过在文本框中输入多个产品ID向购物车添加多个产品,javascript,magento,jquery,e-commerce,Javascript,Magento,Jquery,E Commerce,我正在Magento中开发一个选项,客户可以在文本框中输入多个产品ID,并将其添加到购物车中。 通过使用以下jquery,我只能够在输入框中输入一个产品ID $(document).ready(function(){ $("#submit").click(function(){ var id = $("#nam").val(); $.post("....../checkout/cart/add", { product:id },
$(document).ready(function(){
$("#submit").click(function(){
var id = $("#nam").val();
$.post("....../checkout/cart/add", { product:id },
function(data) {
alert("The Product is added to your shopping cart.");
window.location.reload(true);
});
});
});
var id获取输入框的值
在一个输入框中,我获取一个产品ID,因此通过使用jquery.post()获取值并将其传递到add product页面是没有问题的。
但是,如果我在文本框中输入几个用逗号分隔的产品ID,我将如何获取每个产品ID并将其发送到添加产品页面进行更新?
除了使用jquery.post()方法之外,还有什么更好的方法吗?您可以使用分隔符分割ID,然后迭代生成的数组,将项目添加到购物卡中。比如:
$(document).ready(function(){
$("#submit").click(function(){
var ids = $("#nam").val().split(' '); // SPACE seperated Ids
for(i = 0; i < ids.length; i++){
var id = ids[i];
$.post("....../checkout/cart/add", { product:id },
function(data) {
//alert("The Product is added to your shopping cart.");
//window.location.reload(true);
});
}
});
});
$(文档).ready(函数(){
$(“#提交”)。单击(函数(){
var id=$(“#nam”).val().split(“”);//空格分隔的id
对于(i=0;i
在执行此操作之前,您必须清理文本框值
$(document).ready(function () {
$("#submit").click(function () {
var productIds = [];
$.each($("#nam").val().split(','), function (i, value) {
if (value.length > 0) {
productIds.push(value);
}
});
$.post("....../checkout/cart/add", { productIds: productIds },
function (data) {
alert('The' + (productIds.length == 1 ? 'Product' : 'Products') + ' is added to your shopping cart.');
window.location.reload(true);
});
});
});
public ActionResult add(int[] productIds)
{
return Json(true, JsonRequestBehavior.AllowGet);
}
您需要将产品ID数组返回到post操作,然后才能实现它