如何<textarea>
使用 JavaScript更改元素的内容?
我想把它清空。
如何<textarea>
使用 JavaScript更改元素的内容?
我想把它清空。
像这样:
document.getElementById('myTextarea').value = '';
或者像这样在 jQuery 中:
$('#myTextarea').val('');
你有的地方
<textarea id="myTextarea" name="something">This text gets removed</textarea>
对于所有反对者和非信徒:
value 属性:检索或设置 textArea 元素的输入字段中的文本。
value DOMString 控件中包含的原始值。
如果您可以使用 jQuery,并且我强烈建议您使用 jQuery,那么您只需使用
$('#myTextArea').val('');
否则,它依赖于浏览器。假设你有
var myTextArea = document.getElementById('myTextArea');
在大多数浏览器中,您会这样做
myTextArea.innerHTML = '';
但是在 Firefox 中,你可以
myTextArea.innerText = '';
弄清楚用户使用的浏览器是留给读者的练习。除非你使用 jQuery,当然;)
编辑:我收回。看起来对 textarea 的 .innerHTML 的支持有所改进。我在 Chrome、Firefox 和 Internet Explorer 中进行了测试,它们都正确地清除了 textarea。
编辑 2:我刚刚检查过,如果您在 jQuery 中使用 .val(''),它只会为 textarea 设置 .value 属性。所以 .value 应该没问题。
尽管已经给出了许多正确的答案,但经典的(读取非 DOM)方法是这样的:
document.forms['yourform']['yourtextarea'].value = 'yourvalue';
在 HTML 中,您的 textarea 以如下形式嵌套在某处:
<form name="yourform">
<textarea name="yourtextarea" rows="10" cols="60"></textarea>
</form>
碰巧的是,这也适用于Netscape Navigator 4 和 Internet Explorer 3。而且,并非不重要的是,移动设备上的 Internet Explorer。
将 textarea 放在一个表单中,命名它们,然后轻松使用 DOM 对象,如下所示:
<body onload="form1.box.value = 'Welcome!'">
<form name="form1">
<textarea name="box"></textarea>
</form>
</body>