如何使用 JQUERY 在不刷新页面的情况下对 PHP 循环进行排序

How to sort PHP loop without page refresh using JQUERY

我正在尝试使用 ajax 将变量发送到 php 页面,因此当我单击按钮时,发送的变量将更新到页面而不刷新它。

我有一个名为#toshow 的按钮,单击它时,它会将 ?show=okay 作为 post 发送。

$('#toshow' ).click( function( e ) {
  $.post('?show=okay')
  .done(function(data) {
  });
});

和我的 php

if(isset($_POST['show']) && $_POST['show']) {
  echo $_POST['show'];
}

我点击按钮,但它没有显示文本 'okay'。 我还需要添加什么才能使这项工作正常进行?

谢谢!

在 PHP 中使用 echo 打印的任何内容都将在 .done() 的回调中的 JavaScript data 变量中可用(如果没有发生错误) ] 功能。所以你需要实现这个回调,把返回的文本显示在你需要显示的地方。

示例:

.done(function(data) {
    document.write(data);
});

此外,您将 show 参数发送到服务器的方式(作为 URL 的一部分)是 GET 方法,而不是 POST。如果要使用 POST 方法,将数据作为 $.post() 函数的第二个参数传递:

$.post('', {
    show: 'okay'
})
    .done(...)

您正在 URL 的查询部分发送 "show" 变量,然后,您必须从 $_GET 全局变量中检索它...检查 ...

$('#toshow' ).click( function( e ) {
  $.post('', {"show": "okay"})
  .done(function(data) {
      console.log(data);
  });
});

https://api.jquery.com/jquery.post/#jQuery-post-url-data-success-dataType