Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/436.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Jquery为评论和专家意见动态分页_Php_Javascript_Jquery_Ajax_Pagination - Fatal编程技术网

Php Jquery为评论和专家意见动态分页

Php Jquery为评论和专家意见动态分页,php,javascript,jquery,ajax,pagination,Php,Javascript,Jquery,Ajax,Pagination,我正在尝试为我的网站创建一个动态分页系统,我决定使用ajax回调函数在用户单击不同页面元素时动态显示注释。。 因此,我粘贴下面的代码作为我如何做的示例…我想问你们,我是否做得对,或者他们是否有更好的方法来做,请为我指出正确的方向: javascript: $(document).ready(function(){ $(".pages").click(function(){ var pageno=$(this).attr("id").slice(4,8);//slicing out numbers

我正在尝试为我的网站创建一个动态分页系统,我决定使用ajax回调函数在用户单击不同页面元素时动态显示注释。。 因此,我粘贴下面的代码作为我如何做的示例…我想问你们,我是否做得对,或者他们是否有更好的方法来做,请为我指出正确的方向:

javascript:

$(document).ready(function(){
$(".pages").click(function(){
var pageno=$(this).attr("id").slice(4,8);//slicing out numbers from the id i.e "1" from "page1"
$.get("news.php", { pageno: pageno},
    function(data){
     $("#comments").html(data);
    });
});
});
html:


1.
2.
3.
php:


我不认为这是不合理的,尽管我要提到两个想法

首先,我认为动态分配click处理程序是一件好事,而不是将“click=”放入HTML(这是“渐进增强”的核心)。在服务器上,您可能需要使用不同类型的选择器。按类查找一组元素是定义元素的较慢方法之一,尤其是在可能有许多页面的情况下。您可以将它们全部放在一个div中,然后执行$(“#myDiv span”)。单击()。那应该快得多

其次,假设页码总是从span id的第四个字符开始似乎有点脆弱。最好将id本身设置为页码

$(document).ready(function(){
    var isWorking = false;
    $(".pages").click(function(){
        if ( isWorking ) 
        {
            alert('Please wait for your preceeding request to finish.');
            return false;
        }
        isWorking = true;
        var pageno = $(this).text();
        $.get("news.php", { pageno: pageno},
            function(data){
                $("#comments").html(data);
                isWorking = false;
            });
    });
});
  • 看起来您可以简单地使用span的文本内容作为页码(请参见.text()更改)

  • 您可能希望防止用户尝试一次加载过多页面(请参阅isWorking变量,该变量应防止用户一次加载多个页面)


  • 出于好奇,分页跨度是否会动态生成?如果是这样,那么最好动态地将click方法设置为类似click=“someMethod”的值(.这看起来有点骇人听闻,但我不是一个专家。是的,页面跨度将动态生成…我正在寻找更多专家对此的意见..无论如何谢谢谢谢谢谢,我会将这视为对我所做工作的认可,我会接受你的建议,让id本身成为页码..非常感谢..他们有任何错误吗我应该添加的LER?我使用的是“page1”而不是“1”,因为根据W3c标准,您不应该以数字开头命名您的id…谢谢,我将研究您的所有建议…他们的错误处理程序是否应该添加?
    <div><?php echo $_REQUEST['pageno'];?></div> 
    
    $(document).ready(function(){
        var isWorking = false;
        $(".pages").click(function(){
            if ( isWorking ) 
            {
                alert('Please wait for your preceeding request to finish.');
                return false;
            }
            isWorking = true;
            var pageno = $(this).text();
            $.get("news.php", { pageno: pageno},
                function(data){
                    $("#comments").html(data);
                    isWorking = false;
                });
        });
    });