簡體   English   中英

通過輸入字段更新javascript數組數據

[英]Updating javascript array data via input field

我正在嘗試創建一個購物車,該購物車將構建要發送到服務器的數組。 我遇到的麻煩是允許用戶通過輸入字段來更改數量,該輸入字段會更新basketItems數組中的“數量”值。

我可能正在解決這個錯誤,但是希望你們中的一位天才可以幫助我。

var basketItems = [
    { itemName:"Item 1", price:1.00, quantity:0 },
    { itemName:"Item 2", price:2.00, quantity:0 },
    { itemName:"Item 3", price:3.00, quantity:0 }
];

var basketItemsTotal = 0.00;

function CalcBasketTotal() {
       for (i=0;i<basketItems.length;i++) {
           if (basketItems[i].quantity > 0) {
               basketItemsTotal = basketItems[i].price * basketItems[i].quantity;
           }
       }
}

function PopulateBasketItems() {
      for (i=0;i<basketItems.length;i++) { 
          basketTable.innerHTML += 
           '<tr><td>' + basketItems[i].itemName + '</td>' +
           '<td>$' + basketItems[i].price + '</td>' +
           '<td><input value="' + basketItems[i].quantity + '"></td>' +
           '<td>$' + basketItems[i].price * basketItems[i].quantity + '</td></tr>';
      }
}

BONUS:最終,我試圖使此腳本向服務器發送該數組以及總數,但首先要注意的是!

您的問題在這里:

function CalcBasketTotal() {
   for (i=0;i<basketItems.length;i++) {
       if (basketItems[i].quantity > 0) {
           basketItemsTotal = basketItems[i].price * basketItems[i].quantity;
       }
   }
 }

修復:(用總數= +代替=)

function CalcBasketTotal() {
   for (i=0;i<basketItems.length;i++) {
       if (basketItems[i].quantity > 0) {
           basketItemsTotal += basketItems[i].price * basketItems[i].quantity;
       }
   }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM