我根据编号创建了一些动态文本框和值。用户选择的购物车物品。没有。购物车项目存储在cookie中,我正在尝试执行以下操作:
1)得到号码。来自名为cartcounter
的cookie的购物车项目
2)创建名为itemkey_skey
的“cartcounter”no文本框,其中itemkey
是用户购物车中每个项目的哈希键。
3)提交表格
4)获取php中所选项目的键
现在我可以创建cartcounter
,即具有不同值的文本框的数量。
但问题是我只能获得PHP中$ _POST中的第一个文本框值。我想获得动态创建的表单元素的所有值。
代码:
$(document).ready(function() {
if (getCookie("cartcounter") != 0) {
$("#counter").val(getCookie("cartcounter"));
for (var i = 1; i <= cartcounter; i++) {
var ckey = getCookie(i + "_skey");
var element = document.createElement("input");
alert("Element=" + element);
element.setAttribute("type", "text");
element.setAttribute("value", ckey);
element.setAttribute("name", "skey_" + ckey);
var foo = document.getElementById("itmbox");
foo.appendChild(element);
$("#frm").submit();
}
}
else {
alert('Your cart is empty , please choose your product');
window.location = "http://synergiadigital.com/restaurant2/orderFood.php/"
}
});
答案 0 :(得分:1)
我已经解决了。问题是我在循环中调用了submit函数。我通过这样做解决了这个问题:
$(document).ready(function() {
if (getCookie("cartcounter") != 0) {
$("#counter").val(getCookie("cartcounter"));
for (var i = 1; i <= cartcounter; i++) {
var ckey = getCookie(i + "_skey");
var element = document.createElement("input");
alert("Element=" + element);
element.setAttribute("type", "text");
element.setAttribute("value", ckey);
element.setAttribute("name", "skey_" + ckey);
var foo = document.getElementById("itmbox");
foo.appendChild(element);
}
$("#frm").submit();
}
else {
alert('Your cart is empty , please choose your product');
window.location = "http://synergiadigital.com/restaurant2/orderFood.php/"
}
});