如何使用 JavaScript 變更 <textarea> 的內容
我如何使用 JavaScript 來更改 <textarea> 元素的內容?
我想把它弄空。
答案#1
像這樣:
document.getElementById('myTextarea').value = '';
或者在 jQuery 中像這樣:
$('#myTextarea').val('');
你那裡
<textarea id="myTextarea" name="something">This text gets removed</textarea>
給所有投反對票的人和不信的人:
這裡是 MSDN 參考
value 屬性:檢索或設定 textArea 元素輸入欄位中的文字。
這裡是 MDN 參考資料
value DOMString 控制項中包含的原始值。
答案#2
如果你可以使用 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 應該沒問題。
答案#3
儘管已經有許多正確的答案,但經典(即非 DOM)的方法會是這樣:
document.forms['yourform']['yourtextarea'].value = 'yourvalue';
你的 textarea 在 HTML 中位於某個表單內,例如這樣:
<form name="yourform">
<textarea name="yourtextarea" rows="10" cols="60"></textarea>
</form>
而且碰巧的是,這在 Netscape Navigator 4 和 Internet Explorer 3 上也可行。而且,不可忽視的是,行動裝置上的 Internet Explorer 也可以。
