input标签的maxlength属性可限制text、email、password、search、tel、url和textarea等类型的字符输入数,按Unicode字符计数(中英文均算1个),不适用于number、file等类型,且服务端必须二次校验。

在 HTML 中,input 标签可以通过 maxlength 属性直接限制用户最多能输入的字符数,它适用于 text、email、password、search、tel、url 和 textarea 等类型。
基本用法:直接添加 maxlength 属性
只需在 input 标签中写上 maxlength="数字" 即可。浏览器会自动阻止用户输入超过该数量的字符(包括空格和标点)。
-
<input type="text" maxlength="10">—— 最多输入 10 个字符 -
<input type="password" maxlength="6">—— 密码框最多 6 位 -
<textarea maxlength="200"></textarea>—— 多行文本框同样支持
注意:maxlength 不等于字节数,而是 Unicode 字符数
中文、英文、符号都算作 1 个字符。比如 maxlength="5" 可以输入 “你好abc”(5 个字符),但不能输入 “你好abcd”(6 个字符)。它不按字节或 UTF-8 编码长度计算,所以无需担心中文占多字节的问题。
把任意文章或文档内容转换成精美的全屏翻页 HTML 演示文件(幻灯片风格)。当用户发来一篇文章、文档链接、Markdown 内容、或粘贴的文本,并且希望生成演示用的 HTML 时触发。支持任意内容来源:iWiki 链接、KM 链接、本地文件路径、直接粘贴的文本。生成的 HTML 文件保存到本地工作区,并通过企微直接发送给用户。触发词示例:帮我把这篇文章做成PPT、转成演示文档、生成HTML幻灯片、做个演示、转成可以演示的格式、article to deck、make a slide。
配合 JavaScript 获取实时输入长度
虽然 maxlength 是浏览器原生限制,但有时需要显示剩余字数或做额外校验,可以监听 input 事件:
立即学习“前端免费学习笔记(深入)”;
- 用
element.value.length获取当前字符数 - 用
element.maxLength获取设置的最大长度 - 示例:
<input id="title" maxlength="30"><span id="count">30</span> 字符剩余,然后用 JS 动态更新count
兼容性与注意事项
maxlength 在所有现代浏览器中都支持(包括 IE10+),但以下情况需留意:
- 对
type="number"无效(数字输入框不按字符限制) - 对
type="file"或type="hidden"等类型无意义,也不起作用 - 服务端仍需校验 —— 前端限制可被绕过,务必在后端再次验证长度


















