0

ショッピング カートを模倣したプロトタイプのモバイル Web アプリを開発しています。ショッピング カートを作成し、カートに商品を追加することができました。私が抱えている問題は、総コスト値を上書きすることです。計算を実行するために値を変換することはできますが、合計値が保存されている値を上書きすることはできません。これがコード ive です。

<div data-role="content">
              <div class="ui-grid-b">
                <div class="ui-block-a">Title</div>
                <div class="ui-block-b">Format</div>
                <div class="ui-block-c">Price</div>
                <div class="ui-block-a"><p id = "myTitle"></p></div>
                <div class="ui-block-b"><p id = "myFormat"></p></div>
                <div class="ui-block-c"><p id = "myPrice"></p></div>
                <div class="ui-block-a"></div>
                <div class="ui-block-b"></div>
                <div class="ui-block-c"><p id="myTotal"></p></div>
               </div>   

            </div>

ここで、「myTotal」ID に格納されている値を更新したいと考えています。addtocart() という関数があり、そのコードは次のとおりです。

`
var total = 0;
function addtocart() {

var title = game.Title ;
var price = game.Price ;
var format = game.Format ; 
var newParagraph = document.createElement('p');
newParagraph.textContent = title;
var newParagraph2 = document.createElement('p');
newParagraph2.textContent = format;
var newParagraph3 = document.createElement('p');
newParagraph3.textContent = price;

document.getElementById("myTitle").appendChild(newParagraph);
document.getElementById("myFormat").appendChild(newParagraph2);
document.getElementById("myPrice").appendChild(newParagraph3);

price = parseInt(price, 10);
price = total + price;
var newParagraph4 = document.createElement('p');
newParagraph4.textContent = total;

document.getElementById("myTotal").appendChild(newParagraph4);

} `

これで、appendChild がドキュメントにテキストを追加するためのものであることがわかりましたが、新しいアイテムが追加されたときに「合計」に格納された新しい値で値を上書きする解決策を見つけることができるようです。

前もって感謝します :)

4

2 に答える 2

1

innerHTML プロパティを使用します。これにより、要素内の HTML が、ノードを追加するのではなく、設定したものに設定されます。

var newParagraph4 = "<p>" + total + "</p>";
document.getElementById("myTotal").innerHTML = newParagraph4;

これにより、実行する DOM 操作が少なくなり、DOM で段落を作成してから追加するよりも高速になります。

于 2012-08-22T23:45:24.633 に答える
-1

.textContent を innerHTML に変更します。

var newParagraph4 = document.createElement('p');
newParagraph4.innerHTML = total; 
于 2012-08-22T23:47:35.190 に答える