[英]can't set value of form input javascript
我將document.getElementById("outcome").value
分配給變量outcome
。 當我單擊按鈕時,我要將ID為“結果”的輸入值設置為“某事”。
但是,當我在下面執行代碼時,未設置輸入表單結果。 盡管如此,輸入表單的結果仍然沒有發生。
function throwDice() {
var point=document.getElementById("point").value;
var outcome=document.getElementById("outcome").value;
outcome=Somthing;
}
之后,我修改我的代碼。
function throwDice() {
var point=document.getElementById("point").value;
document.getElementById("outcome").value="Something";
}
我要做的就是刪除分配變量結果並直接將“東西”分配給document.getElementById("outcome").value
。 在這種情況下,輸入表單結果的值為“ Something”。
我的問題是為什么outcome="Something"
無法運行。
情況:
在您的第一個代碼中,您僅用"Something"
覆蓋了outcome
變量值,而不是將其寫入具有id
outcome
元素中,因此,如果您編寫:
說明:
在這里,您聲明了outcome
變量並將其值設置為您輸入的值:
var outcome=document.getElementById("outcome").value;
在此行中,您將outcome
變量重置為"Something"
outcome=Somthing;
因此,在這種情況下, outcome
變量僅保留輸入值,然后將其更改為"Something"
。
因此,請回答您的問題: 為什么result =“ Something”無法運行? ,這是因為outcome
不引用input
元素的value
,而僅保留其value
。
換一種說法:
因此,在您的第一個代碼中,您只是在做這樣的事情:
var outcome = 5; //outcome here is 5
outcome = "Something"; //outcome is changed to "Something"
在JavaScript中輸入的變量很松散,這就是為什么您會看到這種行為,您可以看看“ 了解 JavaScript中的松散類型”以進一步閱讀。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.