65.9K
CodeProject 正在变化。 阅读更多。
Home

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

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.07/5 (8投票s)

2006年10月31日

CPOL
viewsIcon

55985

downloadIcon

243

如何使用一行代码启用页面上所有多行文本框的长度验证...

Sample Image - MultilineLengthValidator.jpg

引言

众所周知,对于 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),因为容器控件是在运行时创建的,先前无法访问。

享受吧...

© . All rights reserved.