我应该为 <textarea> 使用 .innerHTML 还是 .value?

rau*_*wai 5 html javascript forms

这是因为我不能在 div 中使用脚本,所以这不起作用吗?

在我离开的地方,我有这个代码:
按钮脚本:

<script>
    var correctProperty = "value";
    function run(){
        document.getElementsByTagName("head")["0"].innerHTML += eval(document.getElementById("editorHead")[correctProperty]);
        document.getElementById("result").innerHTML = eval(document.getElementById("editorBody")[correctProperty]);
    }
</script>
Run Code Online (Sandbox Code Playgroud)

文本区域(没有classstyle属性 & 在非 div 文本之间):

<textarea id="editorHead" rows="20"></textarea>
<textarea id="editorBody" rows="20"></textarea>
<div id="result"></div>
Run Code Online (Sandbox Code Playgroud)

目前这不起作用,我之前的一个答案(接受的答案)说correctProperty应该设置为"innerHTML". 那么应该吗?或者问题是干扰window(像以前一样)?或者,......我应该把它放在一个表格中然后使用"value"吗?

Ade*_*emi 5

Javascript innerHTML 会更新 textarea 中的文本,但不会在浏览器窗口中显示您的更改;如果你第二次使用它。例如,如果您有一些按钮可以更新 textarea 中的文本;此按钮将第一次插入文本,但第二次将插入文本,尽管它会在 textarea 中插入文本(可以通过 firebug 或 chrome 开发人员工具证明),但这不会显示在浏览器窗口中。相反,如果您使用 value,这将显示在浏览器中(我已经在 chrome 和 firefox 中对其进行了测试)。

所以我认为你应该使用 .value


Poi*_*nty 3

您可以通过“value”属性访问和更新文本区域元素的值。

尝试:

 var theValue = document.getElementById("editorHead").value;
Run Code Online (Sandbox Code Playgroud)

更新<html>元素没有多大意义。