簡體   English   中英

無法設置表單輸入javascript的值

[英]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.

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