【发布时间】:2011-04-15 10:24:12
【问题描述】:
当我动态更改其“只读”属性时,我在 IE7 和 IE8(但不是其他浏览器)中看到一个带有 textarea 的问题。 textarea 最初被定义为只读的,当用户在文本框内单击时,我将 readOnly 设置为 false。此时,如果我键入任何普通字符,它们不会显示 - 事实上,文本框的行为就像它仍然是只读的(即,箭头键四处移动,点击 Delete 转到上一页等。 )
如果我再次在文本区域内单击,输入正常。
这是一个说明问题的代码 sn-p:
<html>
<head></head>
<body>
<textarea id="txt1" onclick="document.getElementById('txt1').readOnly = false" readonly=true>Click in here and try typing.</textarea>
</body>
</html>
我尝试了不同的文档类型。我已经尝试在点击处理程序中手动调用 focus() 和 click() 。我尝试设置一个计时器来设置 readOnly 标志。我试过使用 setAttribute()/removeAttribute()。对这些方法都不满意。
更新
我最终使用了 contentEditable,但仅适用于 IE - 我仍在为 FF 和 Safari/Chrome 使用 readOnly,因为 contentEditable 似乎不适用于这些浏览器。我也得重新检查一下 IE9。
【问题讨论】:
标签: internet-explorer textarea readonly