【发布时间】:2011-06-20 14:44:19
【问题描述】:
我们在 Internet Explorer 中有一个多行文本区域。
如果我们在下一个之后检查它的内容,那么一切都是正确的(textarea 中没有额外的回车):
document.getElementById( 'text-area' ).value = "Hello,\nWorld!";
但是,如果我们将插入符号设置为第二行的开始位置(在 Internet Explorer 中,而不是在代码中)并按 tab 键会有一个 额外的回车符(在下面的keydown上有一个字符串转储):
value[0]='H'
value[1]='e'
value[2]='l'
value[3]='l'
value[4]='o'
value[5]=','
value[6]='\r'
value[7]='\n'
value[8]='W'
value[9]='o'
value[10]='r'
value[11]='l'
value[12]='d'
value[13]='!'
这是一个问题,因为其他浏览器不插入额外的回车。
您知道如何在 Internet Explorer 中防止这种情况发生吗?在 CSS 或 Javascript 的帮助下。
【问题讨论】:
-
回车的具体问题是什么?
-
我想处理用户在 textarea 中按下 tab 字符的情况。如果 Internet Explorer 出现问题(下一个答案不能正常工作):stackoverflow.com/questions/6140632/…
-
我真的不明白 Tab 与
\r有什么关系。 -
您可以在 IE 中进行测试:将 caret 设置为新行的零索引并键入 Tab。
标签: javascript jquery css internet-explorer