1

我根据编号创建了一些动态文本框和值。用户选择的购物车项目。没有。的购物车项目存储在 cookie 中,我正在尝试执行以下操作:

1) 得到号码。来自名为cartcounter
2 的 cookie 的购物车项目的数量创建 'cartcounter' 没有名称的文本框itemkey_skey其中itemkey是用户购物车中每个项目的哈希键。
3) 提交表单
4) 在php中获取选中项的key

现在我可以创建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/"
    }
});​
4

1 回答 1

1

我已经解决了。问题是我在循环中调用了提交函数。我通过这样做解决了它:

$(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/"
    }
});​
于 2012-09-17T04:39:01.353 回答