从数据库输出获得的json数据

时间:2018-05-19 10:10:59

标签: javascript php html json web

我从数据库中读取数据为json对象。还将该数据转移到另一个页面,我想在那里显示该数据,但问题在于显示数据。

这是我显示数据的代码: 请检查代码中的注释!!!



var xmlhttp = new XMLHttpRequest();

    xmlhttp.onreadystatechange = function () {
        if (this.readyState == 4 && this.status == 200) {

            object = JSON.stringify(this.responseText);
            console.log(object);


            console.log(object);
            //console.log(object['data'][0]['title']); ERROR

            object2 = JSON.parse(object)
            console.log(object2);
            //console.log(object2['data'][0]['title']); ERROR
            console.log(object2.title); //here  ENDEFINED




            objectParsed = JSON.parse(
                '{"ID":"1","type":"zima","title":"skijanje","description":"Lorem ipsum dolor sit amet,sed diam voluptua.","people":"From 2 to 8","available":"From November to February","price":"From 350 to 500","numTaken":"0"}'
            );

            console.log(objectParsed);
            console.log(objectParsed.title); // here I got the right ouput which is SKIJANJE

            //document.getElementById("test").innerHTML = object.title;
        }
    };
    xmlhttp.open("GET", "readTourData.php", true);
    xmlhttp.send();




这是我从" readTourData"获得的数据。 enter image description here

最后,这是我尝试显示数据时的输出: enter image description here

变量对象看起来像这样(console.log(object)):enter image description here

我从db获得的数据: 数据:[{ID:" 1",输入:" zima",标题:" skijanje",...}]

0 : {ID:" 1",输入:" zima",标题:" skijanje",...} ID : " 1" 可得到 : "从11月到2月" 描述 : " Lorem ipsum dolor sit amet,sed diam voluptua。" numTaken : " 0" 人 : "从2到8" 价钱 : "从350到500" 标题 : " skijanje" 类型 : "济马"

控制台输出:

- 第一个控制台 - > console.log(object): " \ r \ n数据:[{\" ID \":\" 1 \",\"输入\":\& #34;济马\" \"标题\":\" skijanje \" \"描述\":\&#34 ; Lorem ipsum dolor sit amet,sed diam voluptua。\",\" people \":\"从2到8 \",\"可用\":\"从11月到2月\",\"价格\":\"从350到500 \",\& #34; numTaken \":\" 0 \"}] \ r \ n \ r \ n"

- 第二个控制台 - >的console.log(Object2的): 数据:[{" ID":" 1","类型":" zima","标题":& #34; skijanje","描述":" Lorem ipsum dolor sit amet,sed diam voluptua。"," people":" From 2到8","可用":"从11月到2月","价格":"从350到500",& #34; numTaken":" 0"}]

- 第三个控制台 - > console.log(object2.title): 未定义

- 第四个控制台 - >的console.log(objectParsed): {ID:" 1",输入:" zima",标题:" skijanje",描述:" Lorem ipsum dolor sit amet,sed diam voluptua。 ",人:"从2到8",...} ID : " 1" 可得到 : "从11月到2月" 描述 : " Lorem ipsum dolor sit amet,sed diam voluptua。" numTaken : " 0" 人 : "从2到8" 价钱 : "从350到500" 标题 : " skijanje" 类型 : "济马" 的 : 对象

- 和最后一个控制台 - >的console.log(objectParsed.title): Skijanje

1 个答案:

答案 0 :(得分:0)

问题在于没有object.title

object对象似乎是一个数组。

数组中的每个对象似乎都有title属性。

因此,您应该可以使用以下内容访问数组中第一个对象的标题:object[0].titleobject[0]['title']

打印对象以查看所有这些嵌套(例如

)通常很有帮助
console.log(JSON.stringify(object,null,1));

通过这种方式,您可以更清楚地了解需要访问data属性以及该属性的外观。