我正在使用jQuery插件验证,我想忽略文本框中的默认值。我是jQuery中的addng cusotm验证,如下所示。但它总是返回假。任何人都可以帮助我解决我的代码中的问题
$(document).ready(function () {
$.validator.addMethod("defaultInvalid", function (value, element) {
switch (element.value) {
case "First Name":
if (element.name == "First Name") return false;
}
});
$("#frmReserv").validate({
rules: {
FName: "required defaultInvalid",
},
messages: {
FName: "Please Enter Your Name",
},
});
});
Html字段是
<input type="text" value="First Name" name="FName"/>
答案 0 :(得分:0)
<input type="text" placeholder="First Name" name="FName"/>
比你不需要检查默认值。
$("#frmReserv").validate({
rules: {
FName: "required",
},
Poyfill for placeholder https://github.com/mathiasbynens/jquery-placeholder
答案 1 :(得分:0)
你可以尝试这个
<input type="text" placeholder="First Name" value="" name="FName"/>
值=“”将在jquery验证时检查
答案 2 :(得分:0)
此答案适用于旧版本的IE。
这是我过去使用的自定义方法......
jQuery.validator.addMethod("defaultInvalid", function(value, element) {
return value != element.defaultValue;
});
DEMO:http://jsfiddle.net/45J2Q/
要自动隐藏/显示焦点/模糊的默认文字,请在输入中添加一个类并使用此...
$('.autoclear')
.on('focus', function () {
if ($(this).val() == $(this).prop('defaultValue')) {
$(this).val("");
}
})
.on('blur', function () {
if ($(this).val() == "") {
$(this).val($(this).prop('defaultValue'));
}
});
HTML
<input type="text" value="First Name" name="FName" class="autoclear" />
DEMO 2:http://jsfiddle.net/45J2Q/1/