【问题标题】:What is the maximum length of html textboxhtml文本框的最大长度是多少
【发布时间】:2011-04-27 13:07:03
【问题描述】:

任何人都可以帮助我了解普通 HTML 文本框中可以包含的最大字符长度......

【问题讨论】:

  • 你为什么要问?像这样的问题通常是存在设计问题的标志。
  • 你一定是垃圾邮件发送者,我从来没有用完 HTML 文本框中的字符,除非网站使用 Javascript 施加了额外的限制
  • 我知道这是一个旧线程,但我今天出于正当理由研究这个问题。电子商务平台 Magento 是一款功能强大且很棒的软件。然而,它有一些古怪的代码。这些怪癖之一是在管理类别时在产品选择和排序列表中。有一个隐藏字段,其中包含由分号分隔的产品列表和排序顺序。一千种产品很容易超过最大字段长度,从而导致烦人的错误。这显然是一个设计问题,但有助于了解这些限制以进行调试。

标签: asp.net html


【解决方案1】:

对于HTML端,当没有指定maxlength属性时,输入值的最大长度是无限的。但是,如果您以GET 而不是POST 发送请求,则限制将取决于所使用的网络浏览器和网络服务器。 HTTP 1.1 规范甚至对此提出警告,这里是chapter 3.2.1 的摘录:

注意:服务器应该谨慎对待取决于 URI 长度 超过 255 字节,因为一些较旧的客户端或代理 实现可能无法正确支持这些长度。

对于网络浏览器,实际限制在 Firefox 中约为 8KB,在 Opera 中约为 4KB,在 IE 和 Safari 中约为 2KB。因此,如果您想要成功处理,所有输入的总长度不应超过此长度。至于网络服务器,大多数都有 8KB 的可配置限制。当超出限制时,它通常会被截断,但一些网络服务器可能会发送HTTP 414 error

当您以POST 发送请求时,限制取决于服务器配置。通常它在 2GB 左右。超过时,服务器通常会返回一个HTTP 500 error

【讨论】:

    【解决方案2】:

    对于<input type='text'/>,默认maxlength 是无限的。您可以选择提供此值来限制输入(但不能保证浏览器会强制执行该规则)。

    <textarea> 不支持maxlength,因此可以输入无限字符。

    (参考:https://www.w3.org/MarkUp/HTMLPlus/htmlplus_41.html

    RE:在提交过程中出现长字符串中断

    使用get 方法时,从form 提交的数据量可以有一个最大大小(如果未指定,则为默认值)。它只是一个罐头,因为现在许多浏览器允许更多字符。如果您将formpost 方法一起使用,则提交的数据量没有上限。

    【讨论】:

    • Textarea 不支持该属性。你必须带一些 JS 进来。
    • 感谢您提供的信息,我只是想知道文本框是否有限制,即如果我通过它传递一个长字符串,我不希望字符串因长度不足而中断跨度>
    • @BalusC 确实……我会改写。
    【解决方案3】:

    在 HTML4 中,the maxlength attribute 仅在 input 元素上受支持。 HTML5 对此进行了扩展以允许它on textarea as wellquick test 适用于 Firefox 4 和 WebKit,但不适用于 Firefox 3 或 Opera。如果需要支持 HTML4,请使用 JavaScript 手动限制长度。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-01-17
      • 1970-01-01
      • 2017-07-05
      • 2010-11-20
      • 1970-01-01
      • 2019-11-24
      • 2011-10-15
      相关资源
      最近更新 更多