php - Jquery AJAX PHP数据返回

标签 php jquery ajax

我使用 Jquery 中的 ajax 函数通过 json_encode 函数从 PHP 脚本返回一些值。返回的数据似乎充满了斜杠、引号和\r\n。我知道 stripslashes 或 magic_quotes (已打开)一定出了问题,但似乎无法获得干净的输出

最佳答案

确保在来自 jQuery 的 ajax 调用中,告诉它期待 json 响应。听起来您正在返回纯文本并尝试手动解析它。

$.ajax({
  url: "myscript.php",
  dataType: "json",
  success: function(data){
    console.log( data ); //this line only works with chrome (stock) or FireFox (with FireBug plugin)
  }
});

该代码将在您的控制台中回显(如果您没有带有 FireBug 的 chrome 或 FF,请获取其中之一:P)json 编码输出。请记住,当您从 PHP 输出时,您应该做的就是:

header('Content-type: application/json');
echo json_encode( $myAssociativeArrayOfData );
exit; //make sure nothing else happens to output something

您不需要使用任何特殊格式或斜杠。只需确保 json 代码以具有正确 header 的 json 代码形式输出,并且 jQuery 的 ajax 函数应该会为您转换它。结果将是 success 函数中的数据变量,即您的 json 对象(php 数组)。因此,如果您在 PHP 中传入这样的数组: array('foo'=>'bar') ,那么在 jquery 中的 success 函数中,您可以键入:alert( data.foo );并出现一个显示“bar”的对话框。

关于php - Jquery AJAX PHP数据返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7050048/

相关文章:

javascript - Jquery 用户界面对话框

php - 从浏览器启动在后台执行 php 脚本

php - SQL 检查当天

php - 连接尝试失败,连接方未正确响应

javascript - onkeydown ='return (window.event.keyCode doesn' t 允许通过鼠标单击选择输入

jquery - jquery .click 函数的基本延迟

javascript - 是否可以通过 JavaScript 将数组提交到 AJAX?

javascript - 在这种情况下,如何在 JavaScript 中获取 PHP 变量?

php - 我应该为这个项目使用 Perl 或 PHP 或其他东西吗?

php - 显示 'All Records' 选项