2017-02-15 69 views
-4

我不知道爲什麼它不起作用。我如何檢索輸入值?我如何檢索腳本中的輸入值?

<body> 
    <script> 
     function toCelsius() { 
     var g = document.getElementById("f").innerHTML; 
     var b = (5/9) * (g-32); 
     } 
     document.getElementById("demo").innerHTML = b; 
    </script> 
    Fahrenheit = <input id="f" type=text size=6> 
    <input type=button value="Bereken" onClick="toCelsius()"> 
    <p id="demo"></p> 
</body> 

回答

-2

innerHTML屬性是文檔對象模型(DOM)的一部分,它允許Javascript代碼來操作正在顯示的網站。具體來說,它可以讓一個給定的DOM元素中的閱讀和更換的一切(HTML標籤)

要從你需要使用

var your_var = document.getElementById("filed-id").value; 

所以,你的最終代碼將是如下一個輸入字段獲得的價值:

<body> 
    <script> 
    function toCelsius() { 
     var g = document.getElementById("f").value; 
     var b = (5/9) * (g-32); 
    } 
    document.getElementById("demo").innerHTML = b; 
    </script> 

        Fahrenheit = <input id="f" type=text size=6> 
        <input type=button value="Bereken"   onClick="toCelsius()"> 

        <p id="demo"></p> 
</body> 
2

這條線:

document.getElementById("demo").innerHTML = b; 

時運行:

  • 噹噹b尚未定義demo不文檔
  • 在存在
  • 其中b超出範圍(因爲b被定義在函數內部)

您需要將該行放入函數

這條線:

var g = document.getElementById("f").innerHTML; 

...試圖讀取輸入元素的孩子,但輸入是無效的元素:他們沒有孩子。

您需要閱讀輸入的

<body> 
 
    <script> 
 
    function toCelsius() { 
 
     var g = document.getElementById("f").value; 
 
     var b = (5/9) * (g - 32); 
 
     document.getElementById("demo").innerHTML = b; 
 
    } 
 
    </script> 
 

 
    Fahrenheit = 
 
    <input id="f" type=text size=6> 
 
    <input type=button value="Bereken" onClick="toCelsius()"> 
 

 
    <p id="demo"></p> 
 
</body>