jquery 避免某些单词包含在句子中的验证器

jquery validator to avoid some word include in a sentence

通过 Jquery 验证,我有一个表单
现在我想检查一个不能包含某些特定单词的字段。喜欢

这是我的脚本函数 jquery 验证 不起作用。

jQuery.validator.addMethod("contains",
        function (value, element, param) {
            var contains  = false;
            for (i = 0; i < param.length; i++) {
                if (value.includes(param[i])) {
                    contains  = true;
                }
            }
        return this.optional(element) || contains;
    },"Cannot include Ptd. Ltd.");

根据 jquery 验证规则

            rules: {
                companyname: {
                    required: true,
                    contains: ["Pte. Ltd.", "Private Limited"],
                },

你需要交换true/false语句,因为true意味着它通过了验证并且是有效的。您也可以重新格式化它以使其更有效率。在识别出无效参数后,无需遍历每个参数:

jQuery.validator.addMethod("contains",
  function (value, element, param) {
    if (this.optional(element)) {
      return true;
    }
    for (i = 0; i < param.length; i++) {
      if (value.includes(param[i])) {
        return false;
      }
    }
    return true;
  },
  "Cannot include Ptd. Ltd."
);

如果您要验证的输入元素的验证根本不是 运行,请确保根据您的规则定义,该元素具有 companyname 名称。