页面上所有多行文本框的长度验证






4.07/5 (8投票s)
如何使用一行代码启用页面上所有多行文本框的长度验证...
引言
众所周知,对于 TextMode
属性设置为 MultiLine
的文本框,MaxLength
属性不起作用,因为它们被渲染为 <textarea>
HTML 控件,而这些控件缺少此属性。
有很多很棒的文章可以解决这个问题,但使用自定义控件等方法对于大型项目来说太耗时了。
此方法遍历页面(或其他容器控件)中的所有控件,并将 JavaScript 附加到所有多行文本框以启用长度验证。它适用于 AJAX / ATLAS、FormViews 和所有常用的浏览器。
如何使用
通过设置 MaxLength
属性将多行文本框添加到您的页面。现在,您只需要使用一行代码...
用于对页面上所有多行文本框执行长度验证
将 TextAreaValidator.CheckMaxLength(this);
放在页面的 Page_Load
函数中。
用于对特定文本框执行长度验证
将 TextAreaValidator.CheckMaxLength(theTextBox);
放在页面的 Page_Load
函数中。
对于 FormViews(也位于 ATLAS UpdatePanels 中),使用 FormView 的 OnItemCreated 事件,并使用
TextAreaValidator.CheckAllMaxLengthsWithinParentControl((FormView)sender)
,因为容器控件是在运行时创建的,先前无法访问。
享受吧...