任何人都可以帮助我处理普通HTML文本框中可包含的最大字符长度....
答案 0 :(得分:22)
对于HTML方面,如果未指定maxlength
属性,则输入值的最大长度不受限制。但是,如果您将请求发送为GET
而不是POST
,则限制将取决于所使用的网络浏览器和网络服务器。 HTTP 1.1规范甚至警告过这一点,这里是chapter 3.2.1的摘录:
注意:服务器应该谨慎依赖URI长度 超过255个字节,因为一些较旧的客户端或代理 实现可能无法正确支持这些长度。
对于webbrowsers,实际限制在Firefox中约为8KB,在Opera中约为4KB,在IE和Safari中约为2KB。因此,如果您想要成功处理,所有输入的总长度不应超过此值。对于Web服务器,大多数都具有8KB的可配置限制。超过限制时,通常只会被截断,但某些Web服务器可能会发送HTTP 414 error。
当您以POST
发送请求时,限制取决于服务器配置。通常它大约2GB。超过时,服务器通常会返回HTTP 500 error。
答案 1 :(得分:4)
maxlength
的默认<input type='text'/>
不受限制。您可以选择提供此值来约束输入(但是浏览器不会强制执行规则)。
<textarea>
不支持maxlength
,因此可以接受无限制的字符输入。
(参考:http://www.w3.org/MarkUp/HTMLPlus/htmlplus_41.html)
RE:提交期间长字符串断开
使用方法form
时,get
提交的日期数量可能会有最大值(如果未指定,则为默认值)。它只是一个罐头,因为许多浏览器现在允许更多的字符。如果您使用form
post
方法,则提交的数据量不会达到最大值。
答案 2 :(得分:1)
在HTML4中,只有input
元素支持the maxlength
attribute。 HTML5将其扩展为允许on textarea
as well。 quick test适用于Firefox 4和WebKit,但不适用于Firefox 3或Opera。如果您需要HTML4支持,请使用JavaScript手动限制长度。