2013-01-17 48 views
0

我正在努力將以下內容從使用.load轉換爲.ajax,因爲我想在ajax調用完成後使用ajaxComplete來啓動插件。將.load轉換成.ajax

下面是我現在的代碼,我需要一些關於如何將它轉換爲磚牆的指導。

$('.pbd-alp-placeholder-'+ pageNum).load(nextLink + ' .post', 
      function() { 



       // Update page number and nextLink. 
            $(this).hide().fadeIn(500); 
       pageNum++; 
            nextLink = nextLink.replace(/paged[=].[0-9]*/, 'paged='+ pageNum); 

       // Add a new placeholder, for when user clicks again. 
       $('#pbd-alp-load-posts') 
        .before('<div class="pbd-alp-placeholder-'+ pageNum +'"></div>') 
       $.ajax({}); 
       // Update the button message. 
       if(pageNum <= max) { 
        $('#pbd-alp-load-posts a').text('Load More Posts'); 
              $('#contentWrapper').stellar('refresh'); 
       } else { 
        $('#pbd-alp-load-posts a').text('No more posts to load.'); 
       } 
      } 
     ); 

回答

0
$(element).load(url [, data ] [, complete(responseText, textStatus, XMLHttpRequest) ]) 

可以在被轉換成此

$.ajax(function(){ 
      url:"", 
      data:{}, 
      complete:function(responseText, textStatus, XMLHttpRequest){ 
      } 
}); 

與此可以通過一點一點地將它轉換=)

實施例:

$("#myelemdiv").load("/not-here.php",{"mydata":"hellodata"} function(response, status, xhr) { 

}); 

可以轉換進入像這樣

$.ajax(function(){ 
      url:"/not-here.php", 
      data:{"mydata":"hellodata"}, 
      complete:function(response, status, xhr){ 
       $("#myelemdiv").html(response); 
      } 
}); 
+0

對大多數人使用負載的要點是在HTML中提供一個標識符來過濾結果。爲了模擬這一點,我們會做'成功:函數(數據){$(數據)。找到(選擇器)'。這與'.load(url + selector' – Ohgodwhy

+0

)是一樣的,加載是同步的並且執行目標JS腳本(片段加載方法除外)。 – sdespont