JavaScript 通过 .value 或 .innerHTML 获取 TextArea 输入?

IT技术 javascript textarea innerhtml
2021-02-10 21:31:00

在 JavaScript 中使用myTextArea.value或应该使用获取 textarea 元素的值是否可以myTextArea.innerHTML

谢谢你。

5个回答

你应该使用 .value

myTextArea.value
由于 textarea 有一个结束标签 <textarea></textarea>。我认为我必须使用 .innerHTML 和 .value 将不起作用。我在代码隐藏中设置了 textarea 值。虽然 innerHTML 给了我value但即使我编辑了值,它用于为我提供与我从后面的代码设置的相同的旧值。阅读您的答案并使用 textarea.value。它现在工作正常。我现在正确获取 textarea 值。up 投票支持。
2021-04-05 21:31:00
请,对于此类问题,请始终指向规范,谢谢:html.spec.whatwg.org/multipage/forms.html#dom-textarea-value
2021-04-06 21:31:00

一个区别是您可以将 HTML 实体与 .innerHTML 一起使用

document.getElementById('t1').innerHTML = '&lt;&gt;&amp;';
document.getElementById('t2').value = '&lt;&gt;&amp;';
<textarea id="t1"></textarea>
<textarea id="t2"></textarea>

这个问题是关于读取值,而不是关于设置它。
2021-03-21 21:31:00

对于 div 和 span,您可以使用 innerHTML,但对于 textarea 使用 value。请看下面的例子。

<script language="javascript/text">
document.getElementById("spanText").innerHTML ="text";
document.getElementById("divText").innerHTML ="text";
document.getElementById("textArea").value ="text";
</script>


<span id="spanText"></span>
<div id="divText"></div>
<textarea id="textArea"></textArea>

不要使用 innerHTML 使用值,例如 document.getElementById(name).value

答案取决于您的情况。

我个人会使用 .value ,因为这是其他表单输入提供的。养成这样做的习惯会更容易。