javascript - 使用新功能 AJAX 重新加载页面

标签 javascript php ajax

我有一个显示最新图像的页面。
我正在使用 AJAX 请求对这些图像进行排序:

$('#trier').on('click', function() {        // When i click on button to validate Sort out
var b = document.getElementById('genre').value;  // parameter Sort out : genre 
$.post('index.php', {y: b}, function(data) {
location.reload(); // reload page with pictures sorted out
});
});

这就是我对图像进行排序的函数的样子:

if(isset($_POST['y'])){              // if they is a sorting out request
function latest($n) {
$genre= $_POST['y'];
$dbCon = mysqli_connect("localhost", "artlibr1_default", "azerty123", "artlibr1_01");
$sql = "SELECT * FROM general WHERE genre='$genre' ORDER BY date_added DESC LIMIT $n, 1";
$query = mysqli_query($dbCon, $sql);
while ($list = mysqli_fetch_assoc($query)) {
 return $list['path'];
}
}}else{                             // default display 
function latest($n) {
$genre= $_POST['y'];
$dbCon = mysqli_connect("localhost", "artlibr1_default", "azerty123", "artlibr1_01");
$sql = "SELECT * FROM general ORDER BY date_added DESC LIMIT $n, 1";
$query = mysqli_query($dbCon, $sql);
while ($list = mysqli_fetch_assoc($query)) {
 return $list['path'];
}
}

(仅sql语句改变)
所以问题是我需要使用 $_POST['y'] 数据重新加载页面;但目前页面刚刚重新加载并且没有 $_POST['y'] 数据。

最佳答案

您的代码:

  1. 从 JavaScript 发出 HTTP 请求
  2. 使用 PHP 从数据库获取一些数据
  3. 将数据从 PHP 发送到 JavaScript
  4. JavaScript忽略该数据并重新加载页面(使用原始 GET 请求)

如果您想重新加载页面。 不要使用 Ajax。 Ajax 的要点是您无需重新加载页面即可发出 HTTP 请求。

如果您想使用返回的数据,请不要使用 location.reload,而是获取 data 的值并对其执行某些操作。

关于javascript - 使用新功能 AJAX 重新加载页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35484377/

相关文章:

javascript - 通过 setInterval/setTimeout 访问评估代码

javascript - jQuery:如果按钮是 "hover",改变 NEXT 按钮的样式

php - 在 fopen() 失败时获取有意义的信息 (PHP/suPHP)

php - 我如何使用 PHP 显示一个 html 页面或另一个?

jquery - 获取带有 AJAX 错误的服务器响应?

javascript - Ajax 无法使用 php 正确给出响应

javascript - 禁用 ="disabled"属性不会禁用 IE10 中的文本字段

php - 使用ajax设置 session 变量

javascript - 运行 jQuery 的正确位置

javascript - 同步使用 getScript