![](/img/trans.png)
[英]How to create a function that calls a ClientValidationFunction?
[英]How to trim string in ClientValidationFunction
我正在为CustomValidator编写客户端验证功能,并且需要检查输入字符串的长度。 但是在此之前,为了抵消一些作弊行为,我想从字符串中删除所有前导和尾随空格。 在这种情况下最简单的方法是什么?
谢谢!
最简单的方法是在页面上调用ValidatorTrim(value)javascript函数。 此函数来自每个asp.net验证器添加到页面时所包含的javascript。
但是我不认为它具有文档功能,因此您不能依靠它在以后版本的验证器中可用。 因此,我很可能会使用jQuery,或者像J Cooper所指出的那样添加您自己的函数。
原谅我的说法很钝,但是您只是在寻找Javascript中的trim
函数吗? 如果是这样,这就是jQuery使用的方法:
function trim( text ) {
return (text || "").replace( /^\s+|\s+$/g, "" );
}
不得不说,我提出的问题很容易被谷歌搜索,而我已经对此进行了调查。 但是我想为StackOverflow社区提供一个解决方案,如果您正在为ASP.NET页编写客户端验证功能,这是最简单的解决方案。
已知RequiredFieldValidator还会修剪要检查的字符串的空格。 如果您查看与应用程序关联的ScriptResource.axd文件的源代码,则可以找到此文件
function RequiredFieldValidatorEvaluateIsValid(val) {
return (ValidatorTrim(ValidatorGetValue(val.controltovalidate)) !=
ValidatorTrim(val.initialvalue))
}
更有趣的是
function ValidatorTrim(s) {
var m = s.match(/^\s*(\S+(\s+\S+)*)\s*$/);
return (m == null) ? "" : m[1];
}
代码片段。
因此,您不应该从头开始重写修整功能,而是已经拥有并可以使用它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.