我正在使用交换值脚本将字段标签放在输入中,在焦点上清除它,在模糊时它会保留您输入的值。我需要创建一个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它工作正常。 感谢,
答案 0 :(得分:1)
我不确定这会对您的问题产生什么影响,但是在您的addMethod
函数中:
if ($("#firstName").val === "First Name")
但你应该:
if ($("#firstName").val() === "First Name")