textarea maxlength不能用于输入按键

时间:2013-11-21 02:48:30

标签: c# asp.net

我有一个textarea,其maxlength设置为200,它的工作原理。但是如果用户在输入字符时,点击输入并输入199个字符的命中输入两次然后输入198个字符,则textarea显示应输入最多200个字符的消息。

此问题在IE中仍然存在,但在Chrome中不存在

1 个答案:

答案 0 :(得分:2)

您看到的问题是Chrome和IE处理输入密钥的方式不同。

  • Chrome会将回车键视为\r\n(两个字符)
  • IE将回车键视为\n(一个字符)

这由jsFiddle说明。


结果:

  • 1\r\n
    2\r\n
    3\r\n
    4\r\n
    5\r\n
    6\r\n
    78
    
  

注意:您无法在7后按Enter键,因为它将计为2个字符并超过最大值20,因为数字7代表第19个字符。

  • IE

    1\n
    2\n
    3\n
    4\n
    5\n
    6\n
    7\n
    8\n
    9\n
    10
    

有趣的是,jQuery也将enter键视为单个字符(\n),因此如果你使用jQuery为你计算,那么你最终会遇到与IE相同的“问题”。