0

以下は、単純なショッピング カートのコードです。唯一の問題は、最初のボックスのアイテムが正常に機能することですが、2 番目のボックスは機能しません。

http://itsuite.it.brighton.ac.uk/ols11/cart - 「マルハナバチ」アイテムを追加してから繰り返すと、正しくカウントされます。次に、2 番目のドロップダウンを数回試します。

Javascript:

var ids = []
var names = []
var qtys = []
var prices = []
var total = []


function newcart (id, desc, qty, price)
{
    var lengthofid = ids.length
    var i = 0
    while (i < lengthofid)
    {
        if (id == ids[i])
        {
            qtys[i] = parseInt(qtys[i]) + parseInt(qty)
            prices[i] = parseInt(prices[i]) + parseInt(price)
            i = lengthofid + 1;
        }else{
            ids.push(id)
            names.push(desc)
            qtys.push(qty)
            prices.push(price)
        }
        i++

    }
    if ( i == 0 )
    {
        ids.push(id)
        names.push(desc)
        qtys.push(qty)
        prices.push(price)
    }
    alert(names)
    alert(qtys)
}

4

1 に答える 1

0

このページに 2 つのフォームがあり、同じ名前の select タグがある場合は、次のように関数を呼び出す必要があります

最初のフォームitem1の最初のドロップダウン:
これを試してください

newcart(item1.prodid.value,item1.desc.value,item1.qty.value,item1.price.value);

最初のフォーム item2: で最初にドロップダウンして、これを試してください

newcart(item2.prodid.value,item2.desc.value,item2.qty.value,item2.price.value);

desc と price も同様です。このような 2 つのフォームを持つことは、特に IE の互換性の問題では推奨されないと思います。「私の場合、フォーム内のフォーム」では機能しません。

于 2012-05-10T08:37:36.837 に答える