2016-12-14 154 views
-1

這是HTML代碼:根據輸入的值更改的innerHTML

<body> 
    <form> 
    <input id="input" type="text" name="input" value="Enter Here"> 
    <input type="submit" value="Submit"> 
    </form> 
    <div id="display"> 
    </div> 
</body> 

這是JavaScript:

input = document.getElementById("input"); 
if (input.value == "Hello") { 
    display.innerHTML = "Hello"; 
} else { 
    display.innerHTML = "Type"; 
} 

當我通過點擊輸入框,然後輸入「改變輸入值你好「,它不顯示」你好「在display.innerHTML。當輸入欄中輸入「你好」時,我想顯示「你好」。這是很多「你好」的!任何幫助將是偉大的!提前致謝。

+0

'display = document.getElementById(「display」);'? – Mahi

+0

什麼時候使用這個JavaScript?在頁面加載?然後它會在用戶有機會鍵入任何內容之前運行,但不會再次。 –

回答

0

只有在輸入字段中輸入任何內容之前,您的JavaScript代碼纔會被執行一次。

您需要爲輸入字段設置change處理程序,或者爲表單設置submit處理程序,並設置display.innerHTML

另外,你錯過了display = document.getElementById("display");

0

var input = document.getElementById("input"), 
 
    display=document.getElementById("display"); 
 
input.oninput=function(){ 
 
    if (input.value === "Hello") { 
 
    display.innerHTML = "Hello"; 
 
} else { 
 
    display.innerHTML = "Type"; 
 
} 
 
};
<input id="input" type="text" name="input" value="Enter Here"> 
 
    <div id="display"> 
 
    </div>

0

如果你想用你的按鈕提交您的文本框的(你的輸入類型的文本字段)使用onclick事件的值,如下所示:

function displayData() { 
 
    var div_display = document.getElementById('display'); 
 
    /* This is your input, but you shoud use another Id for your fields. */ 
 
    var textValue = document.getElementById('input').value; 
 
    
 

 
    /* Change the inner HTML of your div. */ 
 
    div_display.innerHTML = textValue; 
 
}
<input id="input" type="text" name="input" value="Enter Here" /> 
 
<input type="submit" value="Submit" onclick="displayData();" /> 
 

 
<div id="display"> 
 
</div>

希望它有幫助。