rapid-validation中过滤敏感词

主要工作是修改validation_cn.js文件。

 

首先,在Validator.messageSource['en-us']上面加入以下代码:

 

Validator.bad_words = [
    /fuck/i, /shit/i, /江zm/, /胡jt/, /法lun/
    ];

 

然后,在Validator.messageSource['zh-cn']里加入以下代码:

 

    ['bad-words', function(v) {
        return ValidationUtils.bad_words_format("您输入的内容中包括以下敏感词[%s],请修改后继续!", [ValidationUtils.getWords(v).join(',')]);
    }]

 

然后,在ValidationUtils中加入以下代码:

 

    bad_words_format : function(str, args) {
        args = args || "";
        var result = str
        result = result.replace(/%s/, args);
        return result;
    }

 

然后,还需要在ValidationUtils中加入以下代码:

 

    getWords : function(v){
        var results = results || [];
        for(var i=0;i<Validator.bad_words.length;i++){
            var m=v.match(Validator.bad_words[i]);
            if(m){
                results.push(m)
            }
        }
        return results;
    }

 

最后,在Validation.addAllThese中加入以下代码即可:

 

    ['bad-words', function(v){
        for(var i=0;i<Validator.bad_words.length;i++){
            var m = v.match(Validator.bad_words[i]);
            if(m){
                return false;
            }
        }
        return true;
    }]

 

使用示例如下:

 

<textarea id="content" name="content" cols="20" rows="50" class="required max-length-5000 bad-words"></textarea>

你可能感兴趣的:(工作)