jquery validator.addMethod

时间:2010-08-15 22:24:48

标签: jquery validation

我正在使用交换值脚本将字段标签放在输入中,在焦点上清除它,在模糊时它会保留您输入的值。我需要创建一个validator.addMethod,因此它不会使用其初始值进行验证。 这是交换值脚本

$(function() {
        swapValues = [];
        $(".swap_value").each(function(i){
            swapValues[i] = $(this).val();
            $(this).focus(function(){
                if ($(this).val() == swapValues[i]) {
                    $(this).val("");
                }
            }).blur(function(){
                if ($.trim($(this).val()) == "") {
                    $(this).val(swapValues[i]);
                }
            });
        });
    });

和用于文本输入的validator.addMethod,其值/标签是“名字”

$.validator.addMethod(
            "Foo",
            function (value, element) {
                if ($("#firstName").val === "First Name") {
                return false;
            } else return true;
        },
        "First name required"
    );

这样,当你在文本框中输入并输入一个不同的值时,当你退出文本框时它会恢复到初始值。这是由于我的交换值例程还是validator.addMethod?当我删除validator.addMethod它工作正常。 感谢,

1 个答案:

答案 0 :(得分:1)

我不确定这会对您的问题产生什么影响,但是在您的addMethod函数中:

if ($("#firstName").val === "First Name")

但你应该:

if ($("#firstName").val() === "First Name")