我有一个JSP页面,其中包含一段JavaScript验证代码,限制了提交时的一定数量字符。我正在使用<textarea>
,因此无法像在<input type="text">
中那样使用长度属性。
我使用document.getElementById("text").value.length
来获取字符串长度。我正在Windows上运行Firefox 3.0(但我也已经测试过IE 6的行为)。表单会被提交到J2EE servlet中。在我的Java Servlet中,参数的字符串长度大于2000!
我注意到这可以通过在<textarea>
中添加换行符轻松地重现。我使用Firebug来确认<textare>
的长度,它确实是2000个字符长。然而,在Java方面,换行符被转换为UNIX样式(\r\n
,而不是\n
),因此字符串长度不同!
我是否漏掉了什么明显的东西?如果没有,您将如何可靠地(跨平台/浏览器)确保<textarea>
受到限制。