2012-04-26 66 views
1

我試圖循環AJAX調用後返回的數據後循環是成功和結果加到pagination plugin.的JQuery的Ajax調用

這裏是我的代碼:

var imagesPerPage = 2, pageNumber = 1; 
    var pagesContainer = $('#pagesContainer'), 
    imagesInPage = 0, 
    divPage = $("#p1"); 

    $.ajax({ 
      type: "POST", 
      url: "Default.aspx/GetImages", 
      data:{}, 
      contentType: "application/json; charset=utf-8", 
      dataType: "json", 
      success: function (response) { 

      //Here goes my for loop      

      } 
     }); 

這是我的循環,我需要從webmethod獲取圖像並循環它們並添加到分頁。

for (i = 0; i < response.d.length; i++) { 
      if (imagesInPage >= imagesPerPage) { 
      imagesInPage = 1; 
      pageNumber += 1; 
      divPage = $('<div/>', { id: "p" + pageNumber }).addClass('pagedemo').hide().appendTo(pagesContainer); 
      } else { 
      imagesInPage += 1; 
      } 
} 

這裏是我的分頁默認配置:

$("#pagination").paginate({ 
       count: pageNumber, 
       start: 1, 
       display: Math.min(7, pageNumber), 
       border: true, 
       border_color: '#fff', 
       text_color: '#fff', 
       background_color: 'black', 
       border_hover_color: '#ccc', 
       text_hover_color: '#000', 
       background_hover_color: '#fff', 
       images: false, 
       mouse: 'press', 
       onChange: function (page) { 
       $('#paginationdemo ._current').removeClass('_current').hide(); 
       $('#p' + page).addClass('_current').show(); 
     } 
    }); //pagination 

現在我的問題是,當我試圖讓一個圖像的響應它沒有顯示我的形象,以及在pagination.If它是不止一個,然後開始向我展示分頁和圖像。

截圖

enter image description here

因此,誰能說我在哪裏,我要去錯了嗎?

+0

只是建議:使用'我++'而不是'i + = 1' – 2012-04-26 09:40:17

+0

你可以發佈json對象,當ajax返回一個唯一的圖像?也許你在那個特定情況下沒有'd'對象 – fcalderan 2012-04-26 09:41:32

+0

@ DotNETNinja-Where?我已經使用了i ++。 – coder 2012-04-26 09:41:34

回答

0

你在哪裏試圖獲得一個圖像的響應?如果你正在嘗試做這在你的,如果條件那麼就不會只有一個響應工作,因爲

imagesInPage> = imagesPerPage

計算結果爲假的imagesPerPage = 2,imagesInPage = 0;

還,如果你的反應類型是JSON和這不能解決您的問題請嘗試使用

$.each(response,function(index,data){ 
    //check each image here 
     // data.id gives you the id of each json object in the response 
}) 
+0

@德拉科 - 我嘗試過相同但沒有成功。 – coder 2012-04-26 09:48:43

0

這是最近我遇到了同樣的問題,你的分頁問題。要解決這個問題,你需要一個條件。檢查響應的長度。如果它是1,然後添加一些默認值,這將起作用。