我正在使用qtip2和jQuery验证,验证输入后工具提示不会消失
问题描述:
验证输入后工具提示没有消失,它仍然显示。我正在使用qtip2和jQuery验证,验证输入后工具提示不会消失
我的代码如下,请帮我找出如何在填充或验证输入后删除它。
$('#signupForm').validate({
rules: {
username: {
required: true,
minlength: 3
},
phone:{
tel: true,
required: true
},
message: {
required: true,
minlength:2
},
email: {
required: true,
email: true
},
captcha: {
required: true,
minlength: 5
}
},
errorPlacement: function (error, element) {
flipIt = $(element).parents('div.left').length > 0,
position = {
at: 'center center',
my: 'top top'
},
offset = flipIt ? 6 : 35;
$(element).filter(':not(.valid)').qtip({
overwrite: false,
content: error,
position: position,
show: {
event: false,
ready: true
},
hide: false,
style: {
classes: 'ui-tooltip-dark ui-tooltip-shadow',
tip: {
corner: true,
offset: offset
}
}
}).qtip('option', 'content.text', error);
} ,
submitHandler: function (form) {
$(".contact-button").val("Please Wait...");
$(".contact-button").prop('disabled', true);
$.ajax({
type: "POST",
url: "ajax/contact_page.php",
data: 'username='+$("#username").val()+'&email='+$("#email").val()+'&phone='+$("#phone").val()+'&message='+$("#message").val()+'&captcha='+$("#captcha").val(),
timeout: 3000,
success:function(data){
$("#mail-status").html(data);
$("#signupForm").find("input, textarea").val("");
$(".contact-button").val("Sent");
setTimeout(function() {
$('#signupForm').find('.valid').qtip('destroy');
}, 1);
refreshCaptcha();
setTimeout(function() {
$(".contact-button").prop('disabled', false);
$("#mail-status").text("");
$(".contact-button").val('Click to Send');
}, 10000);
},
error: function() {alert('failed');}
});
}
});
在这个每当我试图填补输入它显示错误消息提示,但如果我填的是正确的(有效),它仍然会在“提示”。 我该如何解决它?
答
目前其
hide: false
将其更改为:
hide: { when: { event: 'mousemove' },
delay: 2000,
effect: function() { $(this).qtip("destroy"); }
}
它的工作...........但还有另外一个问题时,它破坏了工具提示信息但仍显示提示框(空框) –
尝试通过完全删除隐藏属性本身。你可以在jsfiddle/jsbin中复制,并给予 –
https://jsbin.com/saposudoqe/edit?html,css,js,console,output 看看吧! –