2014-10-28 2 views
0

Я использую jquery/ajax/php для обновления формы. После успешного обновления формы я показываю успешное сообщение <div id="certainResult"></div>. Здесь я добавил jquery .delay() для отображения сообщения об успехе до нескольких секунд, а затем он будет исчезать. НО это .delay() не работает. Следующим является мой код jquery:JQuery .delay() не работает, как ожидалось

<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> 

Есть ли что-нибудь в моем коде?

+0

Любые ошибки в консоли? – j08691

+0

@ j08691 только одна ошибка: 'SyntaxError: ошибка синтаксиса creativeartbd

+0

попытайтесь установить задержку сразу после добавления $ ('# someResult '). append (data) .delay (9000) .fadeOut (' slow '); – Andi

ответ

0

Вы можете попробовать следующее:

Вместо использования 'задержки' использования:

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

Это будет исчезать '#certainResult' после того, как время 9seconds (9000ms)

+0

Хорошо, я сейчас пытаюсь. – creativeartbd

+0

Нет, это не работает. Он все еще просто показывает «bip bip ». Я имею в виду показать и спрятаться очень быстро. – creativeartbd

+0

вместо fadeOut ('slow') вы попробовали номер? может быть, что по какой-то причине он не признает «медленный»? – Gerwin