我正在使用验证插件。我想弄清楚如果字段无效,如何清除文本字段。
我的javascript代码如下
$(document).ready(function() {
$("#enrollForm").validate({
rules: {
email: {
required: true,
email: true
},
vemail: {
required: true,
email: true,
equalTo: "#email"
},
offer_code: {
required: false,
remote: "check_code.php"
}
}
});});
如果字段无效,我试图清除名为offer_code的字段。是否可以在验证函数中执行此操作?
亚历
答案 0 :(得分:1)
检查出来:
http://docs.jquery.com/Plugins/Validation/valid
示例:
$(document).ready(function() {
$("#enrollForm").validate({
rules: {
email: {
required: true,
email: true
},
vemail: {
required: true,
email: true,
equalTo: "#email"
},
offer_code: {
required: false,
remote: "check_code.php"
}
}
});});
$("#enrollForm").blur(function() {
if($("#enrollForm").valid()) {
//success code?
} else {
$("#enrollForm").val('')
}
});
答案 1 :(得分:1)
我使用jquery来验证一些表单。例如,在我的网站上,有一个用户必须输入然后重新输入密码的部分。如果他们的第二个密码的值等于他们的第一个密码,我使用jquery滑下一个显示“你的密码匹配!”的div。
试试这个:
$(document).ready(function(){
$("#error").hide();
$("#invite").hide();
$("#confirm").hide();
$("#invite_short").hide();
$("#short").hide();
$('.button').click(function checkPass(){
var pass = $("#pass").val();
var confirm = $("#con-pass").val();
if(pass != confirm)
{
$("#error").slideDown();
return false;
}
});
$('#con-pass').keyup(function checkPass(){
var pass = $("#pass").val();
var confirm = $("#con-pass").val();
if(pass == confirm)
{
$("#error").slideUp();
$("#confirm").slideDown();
return false;
}
if(pass != confirm)
{
$("#confirm").slideUp();
return false;
}
});
$('#pass').keyup(function checkChar(){
var pass = $("#pass").val().length;
if(pass < 4)
{
$("#short").slideDown();
return false;
}
if(pass == 4
|| pass > 4)
{
$("#short").slideUp();
}
});
$('#invite_number').keyup(function checkCode(){
var code = $("#invite_number").val();
if(code.length == 8)
{
$("#invite_short").slideUp();
$("#invite").slideDown();
return false;
}
if(code.length < 8)
{
$("#invite").slideUp();
return false;
}
});
$('.button').click(function checkCode(){
var code = $("#invite_number").val();
if(code.length < 8)
{
$("#invite_short").slideDown();
return false;
}
});
});
那里有很多代码。但是,它还根据长度要求验证了表格。如果密码少于4个字符,它会在输入密码时通知他们。
你明白了......希望这会有所帮助
答案 2 :(得分:0)
假设插件为label
分配input
类error
,那么您可以这样做:
$('label.error').prev('input').val('');
要准确一点,因为验证插件还会为错误标签分配for
属性:
$(document).ready(
function(){
// call to the plug-in here, input-clearing afterwards
// (though I'm not sure it matters, since it's dependant
// on CSS selectors to work, which aren't dependant on
// the plug-in itself).
$('label.error').each(
function(){
var errorInputID = $(this).attr('for');
$('#'+errorInputID).val('');
});
});
我假设,'验证插件',你的意思是这个,在http://bassistance.de/jquery-plugins/jquery-plugin-validation/,如果我错了,那么这显然可能不起作用。