2014-11-24 61 views
-1

我測試過這個代碼在舊的IE瀏覽器,它的工作原理,但對於現代的一切,它似乎不工作。innerHTML不改變innerHMTL

只有當textarea沒有以任何方式被修改,然後它不起作用時,它纔有效。對頁面所做的任何更改並突然停止運行。

<html> 
<script> 
function clearArea() { 
    document.getElementById("tarea").innerHTML = "This is what\'s up."; 
} 
</script> 
<body> 
<button type="button" onclick="clearArea()">Click me to clear area</button> 
<textarea id="tarea"></textarea> 
</body> 
</html> 

任何想法可能導致這種情況?

+1

你試過不是更新的textarea的value屬性? – 2014-11-24 18:07:15

+0

謝謝,就是這樣。 – Danegraphics 2014-11-24 18:12:07

回答

4

因爲textarea沒有innerHTML,它有value

function clearArea() { 
 
    document.getElementById("tarea").value = "This is what\'s up."; 
 
}
<button type="button" onclick="clearArea()">Click me to clear area</button> 
 
<textarea id="tarea"></textarea>

+0

就是這樣。謝謝! – Danegraphics 2014-11-24 18:11:41

-1

我認爲主要的問題是,你忘了你的包裹標籤<script><head>標籤..

這是工作:

<html> 
<head> 
<script> 
function clearArea() { 
    document.getElementById("tarea").innerHTML = "This is what\'s up."; 
} 
</script> 
</head> 
<body> 
<button type="button" onclick="clearArea()">Click me to clear area</button> 
<textarea id="tarea"></textarea> 
</body> 
</html> 
1

我喜歡要使用value屬性,您可以使用它來代替innerHTML。

這裏演示:JSBin

代碼

function clearArea() { 
    document.getElementById("tarea").value = "This is what's up."; 
}