我在过去为JQuery验证插件放了一些自定义方法,但这是我想要检查多个条件的第一个。是否有一种更优雅,可扩展的方式将多个条件添加到JQuery验证自定义方法中?
它是一个简单的场景,我试图检测字段中的HTML的存在。我不需要广泛的正则表达式,我只是想告诉用户html以客户端方式被允许。如果字段值中有html,我当然会阻止服务器端提交,但我希望有一个很好的用户体验。
必须有一个简单的方法来寻找几个关键元素,可以通过循环一个数组来做到这一点?
<script language="javascript">
$(document).ready(function(){
$.validator.addMethod("findhtml", function(value, element) {
var commentclean = new Boolean();
if (element.value.indexOf("<") != -1)
{
commentclean= false;
//alert('found <');
}
else if
(element.value.indexOf("http") != -1){
commentclean= false;
//alert('found http');
}
else
{
commentclean= true;
//alert('nothing found')
}
return this.optional(element) || (commentclean);
}, "* match the string");
});
</script>
你应该使用正则表达式来寻找html标记。例如,字符串“0 <1”不包含html。在clien方面使用正则表达式并不像你猜想的那么昂贵:) – YD1m