[英]JavaScript - Unable to Get Form Input Value
當用戶在文本字段中輸入文本並單擊提交按鈕時,他們的文本應出現在屏幕上。 現在沒有任何表現。
JS Bin: http : //jsbin.com/itotub/1/edit
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Untitled Document</title>
<script>
function myOnloadFunc() {
var inputAnswer = document.getElementById("inputAnswer");
var userAnswer = inputAnswer.innerHTML;
var submitButton = document.getElementById("submitButton");
submitButton.onclick = function() {
document.write(userAnswer);
};
}
window.onload = myOnloadFunc;
</script>
</head>
<body>
<input type="text" id="inputAnswer" placeholder="Enter your answer">
<input type="button" id="submitButton" value=">">
</body>
</html>
input
元素沒有任何后代,因此.innerHTML
返回一個空字符串。 如果要獲取該值,則必須訪問.value
屬性(有關詳細信息,請參閱MDN上的HTMLInputElement
文檔 )。
另一個問題是,您試圖在用戶實際鍵入任何內容之前獲取該值。 您不希望在頁面加載時獲取值,但是當用戶單擊該按鈕時 :
submitButton.onclick = function() {
console.log(inputAnswer.value);
// or alert(inputAnswer.value);
};
我會避免使用document.write
,即使它僅用於測試目的。 至少要了解在加載DOM后調用它時會發生什么 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.