jquery .validate不是一个函数

时间:2011-05-11 17:27:08

标签: jquery jquery-plugins

jQuery("form button[type=submit]:first").closest("form").validate不是函数

一切都曾经在firefox 3.6.17中运行,但是现在在ff 4.0.1中这已经破了。这适用于Chrome。我已经验证这是一个Mac OSX ff 4.0.1问题,因为我试过运行ff 4.0.1的ubuntu机器。

这是我的代码:

jQuery("form button[type=submit]:first").closest("form").validate({
  ignore: ":hidden",
  submitHandler: function(form) {
    if(!jQuery("#phone_1 input").hasClass("error")){
      jQuery("form button[type=submit]").hide();
      stripPhone();
      return false;
    }
  },
  rules: {
    "lead[first_name]": {
      required: true, minlength: 2
    },
    "lead[last_name]": {
      required: true, minlength: 2
    },
    "lead[phone_1]": {
      required: true, phone_state_validation: true
    },
    "lead[email_address]": {
      required: true,email: true
    },
    "lead[state]": {
      required: true
    },
    "lead[zip_code]": {
      required: true, rangelength: [5, 5], digits: true
    },
    "lead[education_level_reached]": {
      required: false
    }
  },
  messages: {
    "lead[first_name]":"Please enter a valid name",
    "lead[last_name]":"Please enter a valid name",
    "lead[phone_1]":"Please enter a phone number with 10 digits",
    "lead[email_address]":"Please enter a valid email",
    "lead[state]":"Please choose one",
    "lead[zip_code]":"Please enter a 5 digit zip",
    "lead[education_level_reached]":"Please choose one"
  }
});

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您确定在页面中加载了验证插件吗?也许FF4中的某些东西阻止它加载,因为通常当你得到'不是函数'时,它意味着你试图调用的函数没有被附加到jQuery对象。