2013-11-14 8 views
1

我有一個窗體,使用JavaScript來填充一些文本的textarea。用戶應該能夠複製文本,並且我已經使用下面的代碼來使textarea只讀。HTML可以在Internet Explorer中「只讀」textarea嗎?

<textarea readonly id="newList" name="newList" placeholder="When you click 
the button below, your list appears here. Copy and paste it into your 
new document. Use CTRL-A to quickly select all items."></textarea> 

在Chrome偉大的作品,但在IE10 textarea的仍然不是隻讀,並且當用戶點擊它,他們想複製消失的文字,光標所取代。它與我的JavaScript無關 - 我從我的HTML中刪除了「腳本」行,這仍然發生。

是否有一種簡單的方法在Internet Explorer中只讀取textarea?

回答

1

我想在IE10中的確切代碼和textarea是隻讀的,但是當你點擊它佔位符文本消失。我相信這對IE來說是正常的行爲。你是否將需要複製的文本放置在佔位符屬性中?如果是這樣,那就是問題所在。

與需要複製應該是這樣的文字textarea的:

<textarea readonly id="newList" name="newList">Text that needs to be copied...</textarea> 

它也可以有佔位符屬性添加,但是在佔位符屬性指定的文本將不會顯示了。

另請注意,如果您使用disabled屬性,則無法複製textarea中的文本。

+0

我沒有把它放在佔位符屬性中。我使用var foo = createTextNode(newList.join(「\ n」));然後將appendChild添加到textarea。它是否會無意中將其置於佔位符屬性中? –

+0

它在Chrome中非常適用。 –

+0

這絕對是瘋狂的。你會認爲IE10能夠處理簡單的「只讀」HTML屬性。 –

1

你可以禁用你的textarea,但是這不僅阻止了它的可編輯性,而且也意味着它不會在提交時發送 - 所以這取決於你如何使用它,如果這是一個好主意。

您可以將onFocus()事件添加到文本區域,以將用戶從textarea移開,如果它們點擊進入。

+0

禁用文本區域意味着用戶將無法選擇和複製內容... –

相關問題