[英]clearing a input field if it is invalid
我正在使用驗證插件。 我試圖弄清楚如果該字段無效,如何清除文本字段。
我的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的字段。 是否可以在validate函數中做到這一點?
亞歷克斯
看一下這個:
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('')
}
});
我使用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個字符,它會在輸入密碼時通知他們。
您知道了...。希望這會有所幫助
假設插件為input
分配了帶有error
類的label
,那么您可以這樣做:
$('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/ ,如果我錯了那么這顯然可能不起作用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.