验证空白字段后检查另一个验证规则

时间:2016-01-23 20:34:13

标签: javascript jquery validation

我需要在验证第一个规则(空白字段)后验证另一个现成的坏词过滤器。我已准备好所有代码,有人请帮我在我的页面中添加第二个验证。

这是我的jquery代码,我需要包含第二次验证。

$(function() {
$("#review").focus(function() {
    $("#comments").removeClass('hide')
});
$("#sky-form").validate({
    rules: {
        digits: {
            required: true,
            digits: true
        },
        name: {
            required: true
        }
    },
    messages: {
        digits: {
            required: 'Please enter a valid amount of Money'
        },
        name: {
            required: 'Please enter your username',
        }
    },
    submitHandler: function(g) {
        $(g).ajaxSubmit({
            beforeSend: function() {
                $('#sky-form button[type="submit"]').attr('disabled', true)
            },
            success: function() {success funtion goes here}

这是我需要在顶部包含的第二个验证码。主要是我需要这个功能 - bwords = badwords(textbox_val); - 它会在空白字段确定后验证不良单词。

        <script language="javascript" type="text/javascript">
    function Message()
    {

    var textbox_val=document.form.textbox.value;
    if(textbox_val=="")
    {
    alert("Please enter a message");
    return false;
    }

    bwords=badwords(textbox_val);
    if(bwords>0)
    {
    alert("Your message contains inappropriate words. Please clean up your message.");
    document.form.textbox.focus();
    return false;
    }

    }
    </script>

这两个功能都有效,但我只需要在第一个脚本中包含第二个验证。

对不起我的不良恩惠。

1 个答案:

答案 0 :(得分:0)

您可以在代码中添加新规则。我把这个规则称为badWords,对我而言 坏词是坏的,所以当你尝试在名字字段中键入BAD时,你会得到 验证错误消息。

$.validator.addMethod("badWords", function(value, element) {
  if (value.trim().length == 0) {
    return false;
  }
  if (value == 'BAD') {
    return false;
  }
  return true;
}, "BAD WORD");
$(function () {
  $("#sky-form").validate({
    rules: {
      digits: {
        required: true,
        digits: true
      },
      name: {
        required: true,
        badWords: true
      }
    },
    messages: {
      digits: {
        required: 'Please enter a valid amount of Money'
      },
      name: {
        required: 'Please enter your username',
      }
    }
  });
});
<script src="http://code.jquery.com/jquery-1.11.3.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.14.0/jquery.validate.js"></script>


<form id="sky-form">
    <label for="ele1">Digits:</label>
    <input type="text" id="ele1" name="digits"/>
    <br/>
    <label for="ele2">Name:</label>
    <input type="text" id="ele2" name="name"/>
    <br/>
    <input type="submit" id="submit"/>
</form>