【问题标题】:AjAX calls and setIntervalAjAX 调用和 setInterval
【发布时间】:2011-07-08 23:15:35
【问题描述】:

我正在尝试添加分页。 我用

    $(document).ready(function() {
var pageNum = 1;
$(".paginationing").click(function(){
pageNum = $(this).attr("id");
});


    setInterval("ajaxd("+pageNum+")",5000);

});

function ajaxd(pageNum) { 


    var thisuser = $("#thisusern").text();
  $.ajax({
   type: "GET",
   url: "newstitle.php",
   data: "user="+thisuser+"&page="+pageNum,
   success: function(msg){
     $("#edix").html(msg);
   }
 });
} 

发送页码。但它只发送页码1,即使我点击页码。 问题在哪里?如何使用 setInterval 实现 AJAX 分页以每 5 秒调用一次页面?

【问题讨论】:

  • 为什么要使用 setInterval 进行分页 为什么可以在点击事件处理程序中调用分页调用?
  • 我使用 setInterval 每 5 秒调用一次页面。它不涉及分页。我想要 AJAX 分页,但也每 5 秒调用一次 newstitle.php(但使用选择的页码。 ).在 newstitle.php 我有根据页码输出结果的代码。

标签: jquery ajax pagination


【解决方案1】:

我不确定为什么要使用 setInterval 进行分页,而不是在 click 事件处理程序中调用 ajaxd 函数。 我会这样做:

$(document).ready(function() {
    var pageNum = 1;
    $(".paginationing").click(function() {
                pageNum = $(this).attr("id");
                ajaxd(pageNum);
    });
});

function ajaxd(pgNo) {
        var thisuser = $("#thisusern").text();
    $.ajax({
        type: "GET",
        url: "newstitle.php",
        data: "user=" + thisuser + "&page=" + pgNo,
        success: function(msg) {
            $("#edix").html(msg);
        }
    });
}

如果您仍想使用 setInterval,请尝试以下操作:

   var pageNum = 1;

    $(document).ready(function() {

        $(".paginationing").click(function() {
            pageNum = $(this).attr("id");
        });
        setInterval(ajaxd, 5000);
    });

    function ajaxd() {
            var pgNo = pageNum;
        var thisuser = $("#thisusern").text();
        $.ajax({
            type: "GET",
            url: "newstitle.php",
            data: "user=" + thisuser + "&page=" + pgNo,
            success: function(msg) {
                $("#edix").html(msg);
            }
        });
    }

附注: 另请注意,HTML 元素的有效 id 不应以数字开头,但我认为您依赖于它。我宁愿建议您生成类似于“pg-n”的 id,其中 n 是数字,在点击事件中,您可以使用

获取页码
pageNum = $(this).attr("id").replace(/[^0-9]/g, "");

【讨论】:

  • 感谢您的建议。我更改了代码。第二个代码给我错误“pageNum is not defined”,当我点击页码时,它也会给出该错误。
  • 更新了帖子..请立即尝试
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-08-24
  • 2018-05-23
  • 1970-01-01
  • 1970-01-01
  • 2014-02-01
  • 2013-10-03
  • 1970-01-01
相关资源
最近更新 更多