1

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 ループです。

 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

今私の問題は、1 つの画像の応答を取得しようとすると、画像とページネーションが表示されないことです。複数の場合、ページネーションと画像が表示され始めます。

スクリーンショット:

ここに画像の説明を入力

誰が私がどこで間違っているのか教えてもらえますか?

4

2 に答える 2

0

1つの画像の応答をどこで取得しようとしていますか?if条件でこれを実行しようとすると、1つの応答に対してのみ機能しません。

imagesInPage> = imagesPerPage

imagesPerPage=2およびimagesInPage=0として、falseと評価されます。

また、応答タイプがjsonであり、これで問題が解決しない場合は、を使用してみてください

$.each(response,function(index,data){
    //check each image here 
      // data.id gives you the id of each json object in the response
})
于 2012-04-26T09:43:22.570 に答える
0

これは最近私が同じ問題に遭遇したあなたのページネーションの問題です。これを修正するには、条件が必要になります。応答の長さを確認してください。1の場合は、いくつかのデフォルト値を追加すると機能します。

于 2012-04-26T09:44:48.887 に答える