【问题标题】:The JSON parse not working and the attribute does not appearJSON 解析不起作用且属性未出现
【发布时间】:2021-04-08 06:47:59
【问题描述】:

我还在学习 JSON,所以当我尝试这样做时,名称没有出现。

index.php:

$myObj->name = "John";
$myObj->age = 30;
$myObj->city = "New York";
$myJSON = json_encode($myObj);
echo $myJSON;
header("Content-Type: text/html");

index.html:

$(document).ready(function() {
            $("input").blur(function() {
                var data = "pName=" + $(this).val();
                //alert($(this).val());
                $.ajax({
                    type: "POST",
                    url: "index.php",
                    data: data,
                    success: function (respond) {
                        var JQuery = JSON.parse(respond);
                        $("#result").html('');
                        $("#result").append(JQuery.name);
                    }
                });
            });
        });

1:

【问题讨论】:

  • 你应该使用 $myObj = new stdClass();在对象中添加值之前
  • 您还应该在设置标题后回显数据。必须在任何输出之前设置所有标题。您还应该发布结果。它实际上回响了什么?你的ajax请求得到了什么?您需要向我们展示问题和预期结果的适当示例。
  • 另外,你的 JS 看起来很奇怪。无论哪个输入字段刚刚失去焦点,您都使用该输入的值(无论它是哪个输入)并将其用作名称?该页面上是否只有一个<input /> 字段?
  • @MagnusEriksson 是的,它只有一个输入,因为我尝试了一些想法。
  • @MagnusEriksson 我想要做的是当用户输入一个名称时我创建一个 PHP 对象然后显示名称,这里的代码就像一个示例。

标签: javascript php json


【解决方案1】:

试试这个代码。

试试这个代码。你忘了声明对象。 $myObj = new stdClass();

<?php
$myObj = new stdClass();

$myObj->name = "John";
$myObj->age = 30;
$myObj->city = "New York";
$myJSON = json_encode($myObj);
header("Content-Type: text/html");
echo $myJSON;
?>

【讨论】:

  • @MagnusEriksson,已更新。谢谢。
  • @Razan,你能分享一下文件夹结构吗?
  • @Razan,您的 url: "index.php", 路径似乎错误。它的返回 html 脚本。
  • 我将它添加到问题中。@Vel
  • 给我看像这样的输出imgur.com/KYUzTAW
【解决方案2】:

谢谢大家,终于成功了

$myObj = new stdClass();
$myObj->name = "John";
$myObj->age = 30;
$myObj->city = "New York";
$myJSON = json_encode($myObj);
header("Content-Type: text/html");
echo $myJSON;
exit();

【讨论】:

    【解决方案3】:

    改变

    header("Content-Type: text/html");
    

    header("Content-Type: application/json");
    

    【讨论】:

      猜你喜欢
      • 2016-10-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多