2014-03-19 46 views
1

我使用.ajax jquery上傳圖片,但圖片在ajax完成時仍在上傳。加載相同圖像後調用的加載事件。在獲得正確的圖像之前,我必須刷新幾次。.ajax,jquery,上傳後加載較晚的圖片

我嘗試過使用setTimeout,但沒有奏效。我該如何解決這個問題?

新增:正如你所看到的,我嘗試使用超時,但沒有奏效

$.ajax(
     { 
      url:"<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>", 
      type:"POST", 
      data:X, 
      cache:false, 
      processData:false, 
      contentType:false, 
      beforeSend:function() 
      { 
       $('#MAIN').animate({opacity:0.2}); 
       $('#LOADING').fadeIn(250); 
      }, 
      success:function() 
      { 
       setTimeout(function() 
       { 
        $('#'+Y+'_LOAD').load('FRAME/image.php',{USER_CODE:Z,TYPE:Y},function() 
        { 
         $('#MAIN').animate({opacity:1}); 
         $('#LOADING').fadeOut(250); 

         HEIGHT = $('#'+Y+'_LOAD').show().height(); 

         $('#'+Y+'_SLIDE').animate({'height':HEIGHT-3},function() 
         { 
          $('#'+Y+'_LOAD').fadeIn(150); 
         }); 
        }); 
       },5000); 
      } 
     }); 
+1

我們需要看一些代碼。 「我使用.ajax上傳圖片」聽起來有點不可能,所以我們需要看看你在做什麼。 – Bene

+0

X和Y在哪裏定義? – MjrKusanagi

+0

是的,X是表單數據,Y是圖像表單標識。不要擔心這些事情。我的問題是,上傳後,它會加載數據,但它的舊圖像。新的上傳需要幾秒鐘的時間。我必須刷新以獲取它 –

回答

1

的解決方案是無緩存圖像或創造一些這樣的:

BANNER.jpg?V='.time(); 

但是當使用背景圖像時,它不會找到圖像。任何人都有一個解決方案,請張貼。