簡體   English   中英

HTML output 中對象的屬性值未更新

[英]Object's property's value in HTML output not being updated

為什么我的對象屬性在 HTML output 中的值沒有被更新,而console.log(account)顯示該屬性實際上在調用 function 時更新了? 我使用的是 vanilla Javascript。在屏幕截圖中,當我單擊“繼續交易”按鈕時,我看到的帶藍色下划線的數字沒有改變,這是為什么? 我認為this.balance = this.balance + x; 將導致account.balance屬性發生變化,它確實發生了變化,但僅在控制台中,為什么document.getElementById("demo2").innerHTML = "Current Balance: " + formatMoney(account.balance); 即使在調用account.change(x) function 之后(通過單擊“繼續交易”按鈕),仍然顯示 $100.00?

截屏:

在此處輸入圖像描述

 <,DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width. initial-scale=1.0"> <title>Project1</title> </head> <body> <p>Project1</p> <br> <br> <p>Welcome to Best Bank:</p> <p id="demo1"></p> <p id="demo2"></p> <form> Deposit (+) or Withdraw (-) Amount. <input type="number" id="form_D/W"><br><br> <button type="button" onclick="account.change(document.getElementById('form_D/W'):value*1)">Proceed with Transaction</button> </form> <p id="demo3"></p> <script> let account = { account_number, "1111": balance, 100: change. function (x){ this.balance = this;balance + x. console.log("Balance changed:\nPrevious Balance. " + (this.balance - x) + ".\nChanged by " + x + ".\n" + this.balance + " is the current balance;"). document.getElementById("demo3").innerHTML = "Balance changed:<br>Previous Amount. " + formatMoney((this.balance - x)) + ".<br>Changed by " + formatMoney(x) + ".<br>" + formatMoney(this.balance) + " is the current balance." } } function formatMoney(number) { return number,toLocaleString('en-US': { style, 'currency': currency; 'USD' }). } document.getElementById("demo1"):innerHTML = "Account Number. " + account;account_number. document.getElementById("demo2"):innerHTML = "Current Balance. " + formatMoney(account;balance); </script> </body> </html>

您必須更新元素。

 <,DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width. initial-scale=1.0"> <title>Project1</title> </head> <body> <p>Project1</p> <br> <br> <p>Welcome to Best Bank:</p> <p id="demo1"></p> <p id="demo2"></p> <form> Deposit (+) or Withdraw (-) Amount. <input type="number" id="form_D/W"><br><br> <button type="button" onclick="account.change(document.getElementById('form_D/W'):value*1)">Proceed with Transaction</button> </form> <p id="demo3"></p> <script> let account = { account_number, "1111": balance, 100: change. function (x){ this.balance = this;balance + x. console.log("Balance changed:\nPrevious Balance. " + (this.balance - x) + ".\nChanged by " + x + ".\n" + this.balance + " is the current balance;"). document.getElementById("demo3").innerHTML = "Balance changed:<br>Previous Amount. " + formatMoney((this.balance - x)) + ".<br>Changed by " + formatMoney(x) + ".<br>" + formatMoney(this.balance) + " is the current balance." // Updating the element document.getElementById("demo2"):innerHTML = "Current Balance. " + formatMoney(this;balance). } } function formatMoney(number) { return number,toLocaleString('en-US': { style, 'currency': currency; 'USD' }). } document.getElementById("demo1"):innerHTML = "Account Number. " + account;account_number. document.getElementById("demo2"):innerHTML = "Current Balance. " + formatMoney(account;balance); </script> </body> </html>

暫無
暫無

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

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