我正在使用qtip2和jQuery验证,验证输入后工具提示不会消失

我正在使用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"); } 
     } 
+0

它的工作...........但还有另外一个问题时,它破坏了工具提示信息但仍显示提示框(空框) –

+0

尝试通过完全删除隐藏属性本身。你可以在jsfiddle/jsbin中复制,并给予 –

+0

https://jsbin.com/saposudoqe/edit?html,css,js,console,output 看看吧! –