2015-10-16 77 views
0

有一種情況,我正在使用jQuery「.load()」方法使用AJAX連接將內容加載到我的頁面上的div中。在頁面末尾,我必須有一個document.ready函數,並且必須用load語句手動指定每個單獨的AJAX div。jQuery AJAX數據切換

<div id="div1">Loading...</div> 
 
<div id="div2">Loading...</div> 
 
<script type="text/javascript"> 
 
    $(document).ready(function() { 
 
    $("#div1").load("path/to/file.php"); 
 
    $("#div2").load("path/to/file.php"); 
 
    }); 
 
</script>

相反,我希望做的是與jQuery選擇和HTML5數據 - 參數工作。我已經將這些用於許多其他部分,這些部分用於捕獲onclick事件,但在使用AJAX加載方法的相同技術時遇到問題。

我現在擁有的是...

<div id="div1" data-toggle="pagelet" data-url="/path/to/file.php">Loading...</div> 
 
<div id="div2" data-toggle="pagelet" data-url="/path/to/file2.php">Loading...</div> 
 
<script type="text/javascript"> 
 
    $(document).ready(function() { 
 
    $("[data-toggle='pagelet']").load($(this).data("url")); 
 
    }); 
 
</script>

但它不工作。我知道使用數據切換和數據網址參數工作,因爲當我首先添加一個點擊處理程序,並在點擊處理程序中嵌入ajax加載方法,然後當我點擊有問題的div時,它工作。

任何人都可以給我一個想法,我錯了,並指出我在正確的方向。

感謝

+0

需要迭代,並呼籲每個負載一樣可以當你不能做一次全部綁定一個事件或設置一個類...使用each(),然後像循環內的硬編碼類似的東西。 – dandavis

回答

0

用戶需要通過結果集進行迭代如下:

<script type="text/javascript"> 
    $(document).ready(function() { 
    $("[data-toggle='pagelet']").each(function(){ 
     $(this).load($(this).data("url")); 
    }); 
    }); 
</script> 
+0

謝謝唐,這修好了。 –

+0

很高興我能幫忙,請你能接受我的回答,謝謝。 – Don