2011-04-02 57 views
0

我試圖實現Twitter風格的分頁,用戶點擊'更多',導致出現更多的內容。使用jQuery的分頁追加

目前這工作得很好,但我不知道如何跟蹤當前start_limit和end_limit:

# get more replies: 
if (isset($_POST['ajax']) && $_POST['ajax'] == 'Reply') 
{ 
    # yes these will be checked: 

    $thread_id = $_POST['id']; 
    $start_limit = $_POST['start_limit']; 
    $end_limit = $_POST['end_limit']; 
    $ajax_auth_token = $_POST['ajax_auth_token']; 

    # return doesn't work?' 
    print_r(sql_get_replies_by_thread_id($link, $thread_id, $start_limit, $end_limit)); 

} 

上面的代碼基本上執行它使用LIMIT $ start_limit一個SQL語句,$ end_limit

這是通過該代碼發送,此刻我只是顯示一個警告框的輸出,我知道你可以使用jQuery追加爲返回的HTML:

 <script type="text/javascript"> 
      $(document).ready(function() { 
       $('.more_replies').live("click",function() {   

      $.post("http://localhost/forum_site/?action=ajax", {id: "40", ajax: "Reply", start_limit: "0", end_limit: "3", ajax_auth_token: "Something" }, 
    function(data) { 
    alert("Data Loaded: " + data); 
    }); 

       }); 
      }); 
     </script> 

所以限制將是0和3(限制0,3)。

如何從鏈接中獲取這些值例如<a href="/view.php?ajax_auth_token=a&id=x&start_limit=y&end_limit=z">More</a>

當這個鏈接start_limit和end_limit用戶點擊應當由30

+0

我見過類似的地方限制添加的屬性中鏈接的東西,然後發送下來後,然後更新。即數據開始=「0」數據結束=「3」 – 2011-04-02 20:11:54

回答

1

如果你想保持在href屬性變量,那麼你就必須做一些URL解析,閱讀它提取遞增變量並重寫它。相反,我會建議你使用jQuery的.data()方法http://api.jquery.com/data/,那麼你會是這樣的:

//set initial values 
$(".more_replies").data("pagination",{start_limit0, end_limit:3}); 

//then you increment it 
var pagination = $(".more_replies").data("pagination"); 
$(".more_replies").data("pagination",{ 
     start_limit: pagination.start_limit+=30, 
     end_limit: pagination.end_limit+=30, 
}); 
+0

這是一個很好的。 – 2011-04-02 20:44:23