在Firebug中使用jQuery验证表单输入时发生错误

时间:2010-04-05 08:02:09

标签: jquery jquery-validate

我在jQuery中编写了一个自定义验证代码,工作正常。我有一个登录表单,有两个字段,即用户ID和密码。我为这些字段编写了客户端验证的自定义代码。此代码工作正常,并根据情况给出正确的错误消息。

但是这段代码的问题是,当我在任何一个或两个字段中输入无效数据并按下表单的提交按钮时,它会显示正确的错误消息,但同时当我在Firebug中检查它时,它会显示以下错误单击提交表单按钮时的消息

validate is not defined
function onclick(event) { javascript: return validate(); }
(click clientX=473, clientY=273)

这是JQUERY验证码

$(document).ready(function (){

$("#id_login_form").validate({

        rules: {

            userid: {

                required: true,

                minlength: 6,

                maxlength: 20,

//                              basic: true

                            },

            password: {

                required: true,

                minlength: 6,

                maxlength: 15,

//              basic: true

                              }

               },

    messages: {

        userid: {

            required: "<br> Please enter the username.",

            minlength: "<br>User Name should be minimum 6 characters long.",

            maxlength: "<br>User Name should be maximum 15 characters long.",

//          basic: "<br>working here"

              },

        password: {

            required: "<br> Please enter the password.",

            minlength: "<br>Password should be minimum 6 characters long.",

            maxlength: "<br>Password should be maximum 15 characters long.",

//          basic: "<br>working here too.",

              }

          },

        errorClass: "errortext",

        errorLabelContainer: "#messagebox"
                                             }
    });

    });

/*  $.validator.addMethod('username_alphanum', function (value) { 
    return /^(?![0-9]+$)[a-zA-Z 0-9_.]+$/.test(value); 
    }, 'User name should be alphabetic or Alphanumeric and may contain . and _.');


    $.validator.addMethod('alphanum', function (value) { 
    return /^(?![a-zA-Z]+$)(?![0-9]+$)[a-zA-Z 0-9]+$/.test(value); 
    }, 'Password should be Alphanumeric.');


    $.validator.addMethod('basic', function (value) { 
    return /^[a-zA-Z 0-9_.]+$/.test(value); 
    }, 'working working working');
*/

所以请告诉我我的jQuery代码在哪里错了。谢谢!

1 个答案:

答案 0 :(得分:0)

虽然你的代码还很完整,但我的水晶球表明你正在复制你在某处找到的一些代码,而没有注意到代码不是简单的jQuery代码。该代码属于jQuery插件,因此您必须在使用它之前识别它是什么插件,获取它并加载相应的* .js文件。