Jquery .delay()没有按预期工作

时间:2014-10-28 15:14:53

标签: jquery

我正在使用jquery / ajax / php来更新我的表单。成功更新表单后,我向<div id="certainResult"></div>显示了成功的消息。在这里,我添加了jquery .delay(),用于显示成功消息,最短几秒,然后它将淡出。但是这个.delay()不能以某种方式工作。以下是我的jquery代码:

<script>
$("#given_name, #family_name, #work_phone, #mobile_phone, #email, #email_private, #department, #title, #characterNotes").change(function(){

    var cdid =  $("#cdid_hidden").val();
    var family_name =  $("#family_name").val();
    var given_name =  $("#given_name").val();
    var work_phone =  $("#work_phone").val();
    var mobile_phone =  $("#mobile_phone").val();
    var email =  $("#email").val(); 
    var email_private =  $("#email_private").val();
    var department =  $("#department").val();
    var title =  $("#title").val();
    var characterNotes =  $("#characterNotes"). val();


    $.ajax({
      url: 'certainfield.php',
      type: 'POST',
      dataType: 'html',
      data: {
          "cdid" : cdid,
          "family_name" : family_name,
          "given_name" : given_name,
          "work_phone" : work_phone,
          "mobile_phone" : mobile_phone,
          "email" : email,
          "email_private" : email_private,
          "department" : department,
          "title" : title,
          "characterNotes" : characterNotes
          },
    }).success(function ( data ) {
      getDetails(cdid);       
      $('#certainResult').append(data);   
      $('#certainResult').delay(9000).fadeOut('slow');  

    });        
});
</script>

我的代码中有什么错误吗?

1 个答案:

答案 0 :(得分:0)

您可以尝试以下方法:

而不是使用&#39;延迟&#39;使用方法:

                    setTimeout(function(){
                      $('#certainResult').fadeOut('slow');    
                    },9000);

这将淡出&#39;#certainResult&#39;在9秒(9000ms)之后