2016-12-01 85 views
-1

我正在製作一個基本的javascript定時器。目前,定時器運行的秒數是使用變量設置的。我想讓這個變量由用戶設置,但我努力使它工作。使用.value方法從DOM獲取用戶輸入(Basic Javascript Timer)

這是我已經試過:

HTML:

<input type="text" placeholder="How many seconds?" id="set-timer"> 

這給出了一個輸入框。

JS:

var originalCount = document.getElementById("set-timer").value; 

但這似乎並沒有工作。我是否錯誤地使用.value?

這裏是我的jsfiddle給你什麼,我試圖實現一個想法:https://jsfiddle.net/k0xxzkr2/1/

希望我在我的目標很清楚。我仍然圍繞着Javascript進行包裝。

在此先感謝。

+0

這條線大概在頁面加載執行,之前你居然把任何東西在文本框中: VAR originalCount = document.getElementbyId(「set-timer」); 您需要將其移動到其他地方並在事件中觸發它。也許創建另一個按鈕叫Set Timer – dave823

+0

啊哈!這已經解決了我的問題。謝謝@ dave823!得到它與另一個按鈕一起工作。以下是jfiddle,如果您感興趣:https://jsfiddle.net/yknxk8vt/1/ –

回答

0

JavaScript是區分大小寫的。您有getElementbyId而不是getElementById。另外,您需要修改javascript檢查值是否正在運行。現在它正在頁面加載中運行。你可能希望把它一個點擊按鈕的方法或一種內在的東西:

function getInputValue() { 
 
    // Use getElementById, not getElementbyId 
 
    var originalCount = document.getElementById("set-timer").value; 
 
    console.log(originalCount); 
 
}
<input type="text" placeholder="How many seconds?" id="set-timer"> 
 
<button onclick="getInputValue()">Get timer value</button>

0

它應該是getElementByIdgetElementbyId

var originalCount = document.getElementById("set-timer").value; 
console.log(originalCount); 
+0

嗨。我的錯誤,那是一個錯字。即使使用正確的getElementById,它仍然不起作用。 –

+0

@AndrewBloyce已經修復。看看我的答案 –