javascript - PHP 处理 Jquery $.post()

标签 javascript php jquery ajax

我正在尝试制作一个聊天程序,但我陷入了可能是 php 最简单的方面。 我在 app.js 中有以下代码

var msg = "123";
$.post('index.php', {send: msg});

以及index.php中的以下内容

<?php
switch($_SERVER['REQUEST_METHOD'])
{
  case 'GET':
      echo "<script type='text/javascript'>alert('GET');</script>";
      break;

  case 'POST':
    $msg = $_POST['send'];
    echo "<script type='text/javascript'>alert('POST');</script>";

}
?>

该代码仅提醒我加载页面时收到的“GET”请求。每当我在 app.js 中调用 $.post 函数时,什么都不会发生。我不知道服务器是否有问题,或者我在请求中链接到我的index.php 文件是否错误?

最佳答案

问题是 jquery $.post 函数会将请求发送到网站,但随后不会神奇地显示网站输出 - 如果您不告诉它执行某些操作调用的输出不会执行任何操作。

要让它输出站点的响应,请尝试执行以下操作:

var msg = "123";

$.post('index.php', {send: msg}, function(response) {
    alert(response);
});

这为 jQuery POST 请求提供了一个回调函数,以指示它如何处理来自网站的响应。

jQuery post documentation

Example

关于javascript - PHP 处理 Jquery $.post(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43174503/

相关文章:

jQuery Ajax 函数返回错误 : Uncaught TypeError: Object #<XMLHttpRequest> has no method 'done'

jquery - RailsTutorial 11.2.5 Ajax 调用未返回成功

javascript - JavaScript 或 AS3 中的 parseInt 返回错误值

PHP - 使用大量参数和默认值初始化对象的最佳方式

javascript - 在隐藏 div 下发布字段

php - UNION ALL - 返回结果来自哪个表

PHP header 重定向在 Apache 上不起作用

javascript - 如何在单击加载时隐藏除 anchor href 引用的第一个 div 之外的所有内容

javascript - 自合并对象 - lodash

javascript - 使用 Jquery 在循环内动态乘以值