如何在 maxlength
中设置 textarea
?为什么 maxlength
在 textarea
不能正常工作?
原文由 Hitesh Prajapati 发布,翻译遵循 CC BY-SA 4.0 许可协议
如何在 maxlength
中设置 textarea
?为什么 maxlength
在 textarea
不能正常工作?
原文由 Hitesh Prajapati 发布,翻译遵循 CC BY-SA 4.0 许可协议
如果您使用的是 HTML 5,则需要在 DOCTYPE
声明中指定。
对于有效的 HTML 5 文档,它应该以:
<!DOCTYPE html>
在 HTML 5 之前, textarea
元素没有 maxlength
属性。
您可以在 DTD/spec 中看到这一点:
<!ELEMENT TEXTAREA - - (#PCDATA) -- multi-line text field -->
<!ATTLIST TEXTAREA
%attrs; -- %coreattrs, %i18n, %events --
name CDATA #IMPLIED
rows NUMBER #REQUIRED
cols NUMBER #REQUIRED
disabled (disabled) #IMPLIED -- unavailable in this context --
readonly (readonly) #IMPLIED
tabindex NUMBER #IMPLIED -- position in tabbing order --
accesskey %Character; #IMPLIED -- accessibility key character --
onfocus %Script; #IMPLIED -- the element got the focus --
onblur %Script; #IMPLIED -- the element lost the focus --
onselect %Script; #IMPLIED -- some text was selected --
onchange %Script; #IMPLIED -- the element value was changed --
%reserved; -- reserved for possible future use --
>
为了限制键入 textarea
的字符数,您需要将 javascript 与 onChange
事件一起使用。然后您可以计算字符数并禁止进一步键入。
这 是关于文本输入以及如何使用服务器和客户端脚本来限制大小的深入讨论。
这 是另一个示例。
原文由 Oded 发布,翻译遵循 CC BY-SA 2.5 许可协议
4 回答2.2k 阅读
3 回答2.1k 阅读
2 回答991 阅读✓ 已解决
4 回答948 阅读
2.6k 阅读
2 回答872 阅读
1 回答1.4k 阅读
在 HTML5 之前,我们有一个简单但可行的方法:首先在 textarea 元素中设置一个 maxlength 属性:
然后使用 JavaScript 来限制用户输入:
确保绑定“ input ”和“ propertychange ”事件以使其在各种浏览器(如 Firefox/Safari 和 IE)上工作。