Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/81.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 如何多次加载AJAX以分别更改页面(页码)?_Php_Html_Ajax - Fatal编程技术网

Php 如何多次加载AJAX以分别更改页面(页码)?

Php 如何多次加载AJAX以分别更改页面(页码)?,php,html,ajax,Php,Html,Ajax,我有这样的想法: (忽略代码的丑陋性) 那么我在这里错过了什么 尝试在这里(再次)解释我的问题:我有一个网页,其中有一个(比方说)10个项目的列表。一切都通过GET方法工作(能够直接从URL;更改参数。?page=4&term=Star%20Wars)。有一个输入框(用于搜索)和“后退”和“前进”按钮(用于来回移动)。现在它的工作原理如下:寻找一本叫做《星球大战》的书。我将被重定向到同一个页面,PHP启动(获取参数-$\u GET['page/term'])。。然后我有两个漂亮的变量:page

我有这样的想法: (忽略代码的丑陋性)

那么我在这里错过了什么


尝试在这里(再次)解释我的问题:我有一个网页,其中有一个(比方说)10个项目的列表。一切都通过GET方法工作(能够直接从URL;更改参数。?page=4&term=Star%20Wars)。有一个输入框(用于搜索)和“后退”和“前进”按钮(用于来回移动)。现在它的工作原理如下:寻找一本叫做《星球大战》的书。我将被重定向到同一个页面,PHP启动(获取参数-$\u GET['page/term'])。。然后我有两个漂亮的变量:page=2 term=“星球大战”显示第2页的项目

..当按下“下一页”按钮时,AJAX将加载下一页,页面变量递增(page=3);因此,我从第3页获取内容(整个HTML),然后显示数据,替换body元素或其他

现在,这只是一个介绍,问题是:在我需要单击按钮之前,如何进行2个AJAX调用(将“onload”添加到body?)。然后如何存储2页的内容(第2页和第4页的内容;当前页面为3时)和 当我真正点击按钮时,我不必等待页面加载(尽管页面从不刷新),我可以获得数据即时性

页面加载时间长(+3秒),因为我使用外部API来显示项目

希望我讲得通

对不起,这条信息看起来很奇怪(在发布之前,一切看起来都好了,哈哈),当然还有我的英语语法

问候

编辑:

不,它不起作用,即使是最简单的:

<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>

function click() {
    $("body").load("search.php");
}

</script>
</head>
<body>
    <input type="button" value="Click Me!" onclick="click()"/>
</body>
</html>

<?php //search.php
    echo "ajax!?";
?>
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>

function click() {
    $("body").load("search.php");
}

</script>
</head>
<body>
    <input type="button" value="Click Me!" onclick="click()"/>
</body>
</html>

<?php //search.php
    echo "ajax!?";
?>

函数单击(){
$(“body”).load(“search.php”);
}
那么我在这里错过了什么


尝试在这里(再次)解释我的问题:我有一个网页,其中有一个(比方说)10个项目的列表。一切都通过GET方法工作(能够直接从URL;更改参数。?page=4&term=Star%20Wars)。有一个输入框(用于搜索)和“后退”和“前进”按钮(用于来回移动)。现在它的工作原理如下:寻找一本叫做《星球大战》的书。我将被重定向到同一个页面,PHP启动(获取参数-$\u GET['page/term'])。。然后我有两个漂亮的变量:page=2 term=“星球大战”显示第2页的项目

..当按下“下一页”按钮时,AJAX将加载下一页,页面变量递增(page=3);因此,我从第3页获取内容(整个HTML),然后显示数据,替换body元素或其他

现在,这只是一个介绍,问题是:在我需要单击按钮之前,如何进行2个AJAX调用(将“onload”添加到body?)。然后如何存储2页的内容(第2页和第4页的内容;当前页面为3时)和 当我真正点击按钮时,我不必等待页面加载(尽管页面从不刷新),我可以获得数据即时性

页面加载时间长(+3秒),因为我使用外部API来显示项目

希望我讲得通

对不起,这条信息看起来很奇怪(在发布之前,一切看起来都好了,哈哈),当然还有我的英语语法


关于

我建议使用javascript框架,例如,以减轻一些ajax复杂性

使用jQuery可以执行以下操作:

<!-- index.html -->
<html>
  <head>
    <script src="http://code.jquery.com/jquery-latest.js"></script>
    <script>
      function click() {
        $("body").load("search.php?term=" + "tom" + "&page=1");
      }
    </script>
  </head>
  <body>
    <input type="button" value="Click Me!" onclick="click()"/>
  </body>
</html>

函数单击(){
$(“body”).load(“search.php?term=“+”tom“+”&page=1”);
}
并使用search.php

<?php
// search.php
echo "<b>This is loaded by ajax!</b>";

那么问题出在哪里,伙计?)如果要更改HTML标记的值,这是整个文档的顶级标记。在文档中有一个具有特定ID的DIV标记,然后使用document.getElementById()来更改其内容是否更有意义。此外,考虑使用jQuery——它会使这类事情变得更容易。当索引.php加载了它的内容(OnLoad)时,我想加载2页(用Ajax);当前页面+1和当前页面-1。因此,当我单击按钮“”时,我将分别获得上一页或下一页的内容,而无需重新加载。我怎么能这么做?杰森,谢谢你我将测试它!:)
<?php
// search.php
echo "<b>This is loaded by ajax!</b>";