[英]How to change the Content of a <textarea> with JavaScript
我如何使用 JavaScript 更改<textarea>
元素的内容?
我想让它空着。
像这样:
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>
这是一个简单的 vanilla JS 示例,它在单击按钮时更改文本区域内容。
const button = document.querySelector("#button"); const messageBox = document.querySelector("#message"); button.addEventListener("click", ()=>{ messageBox.innerText = "Please type your message here." });
<h1>TextArea Examplw with JavaScript</h1> <textarea id="message"></textarea> <button id="button">Click to Change</button>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.