如何用Javascript更改<textarea>的内容
我将如何改变JavaScript的<textarea>
元素的内容?
我想把它弄空。
喜欢这个:
document.getElementById('myTextarea').value = '';
或者像这样在jQuery中:
$('#myTextarea').val('');
你在哪里
<textarea id="myTextarea" name="something">This text gets removed</textarea>
对于所有的下stream者和非信徒:
-
这是MSDN的参考
value属性:获取或设置textArea元素的input字段中的文本。
-
这是MDN参考
值DOMString控件中包含的原始值。
如果你可以使用jQuery,而且我强烈build议你这么做,那么你只需要做
$('#myTextArea').val('');
否则,它依赖于浏览器。 假设你有
var myTextArea = document.getElementById('myTextArea');
在大多数浏览器中你都这样做
myTextArea.innerHTML = '';
但在Firefox中,你呢
myTextArea.innerText = '';
找出用户正在使用的浏览器是读者的一个练习。 除非你使用jQuery,当然;)
编辑 :我拿回来。 看起来像对textarea的.innerHTML的支持已经改善。 我在Chrome,Firefox和Internet Explorer中testing过,所有这些都正确地清除了textarea。
编辑2 :我只是检查,如果你在jQuery中使用.val(''),它只是为textarea设置.value属性。 所以.value应该没问题。
虽然已经给出了许多正确的答案,但是经典(阅读非DOM)方法将是这样的:
document.forms['yourform']['yourtextarea'].value = 'yourvalue';
在HTML中你的textarea嵌套在一个像这样的forms:
<form name="yourform"> <textarea name="yourtextarea" rows="10" cols="60"></textarea> </form>
正如它发生的那样,这也适用于Netscape Navigator 4和Internet Explorer 3。 而且,不是不重要的,移动设备上的Internet Explorer。
如果它的JQuery ..
$("#myText").val('');
要么
document.getElementById('myText').value = '';
http://www.hscripts.com/tutorials/javascript/dom/textarea-events.php
把textarea放到一个表单中,命名它们,然后就可以很容易地使用dom对象,如下所示:
<body onload="form1.box.value = 'Welcome!'"> <form name="form1"> <textarea name="box"></textarea> </form> </body>