【问题标题】:Pagination using jquery append使用jquery追加分页
【发布时间】:2011-07-28 09:17:16
【问题描述】:

我正在尝试实现 twitter 风格的分页,用户点击“更多”,导致出现更多内容。

目前这工作正常,但我不知道如何跟踪当前的 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, $end_limit 的 SQL 语句

这是通过此代码发送的,目前我只是在警告框中显示输出,我知道您可以对返回的 HTML 使用 jquery append:

        <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 (LIMIT 0,3)。

如何从链接中获取这些值,例如&lt;a href="/view.php?ajax_auth_token=a&amp;id=x&amp;start_limit=y&amp;end_limit=z"&gt;More&lt;/a&gt;

当用户点击此链接时,start_limit 和 end_limit 应该增加 30。

【问题讨论】:

  • 我看到了类似的情况,其中限制作为属性添加到链接,然后通过帖子发送,然后更新。即 data-start="0" data-end="3"

标签: php jquery twitter append


【解决方案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, 
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-04-26
    • 1970-01-01
    • 1970-01-01
    • 2019-08-26
    • 2014-09-18
    • 2013-05-22
    • 2021-10-20
    相关资源
    最近更新 更多