0

我正在使用 codeigniter 框架来开发我的网站。目前我正在使用 jQuery 发送 AJAX 请求以从服务器获取数据。我尝试了两种方法,一种是数据在 PHP 关联数组中,另一种是在 JSON 对象中。请查看我从 AJAX 请求返回的数据:

{
    "o": [
        {
            "q_id": "83",
            "t_id": "4",
            "question": "jjjjs.jfdaskldjf",
            "option1": "jjjjasdfasdf",
            "option2": "jjj",
            "option3": "lll",
            "option4": "lll",
            "answer": "lll",
            "marks": "22"
        },
        {
            "q_id": "84",
            "t_id": "4",
            "question": "This is testing",
            "option1": "2",
            "option2": "7",
            "option3": "8",
            "option4": "9",
            "answer": "2",
            "marks": "2"
        },
        {
            "q_id": "85",
            "t_id": "4",
            "question": "hello this is another test",
            "option1": "a",
            "option2": "b",
            "option3": "c",
            "option4": "d",
            "answer": "a",
            "marks": "2"
        },
        {
            "q_id": "86",
            "t_id": "4",
            "question": "another test",
            "option1": "8",
            "option2": "9",
            "option3": "0",
            "option4": "1",
            "answer": "1",
            "marks": "2"
        },
        {
            "q_id": "87",
            "t_id": "4",
            "question": "last question ",
            "option1": "z",
            "option2": "x",
            "option3": "c",
            "option4": "v",
            "answer": "c",
            "marks": "2"
        }
    ]
}

我以以下方式访问它:

alert(data["o"][0]);

但是发生的错误是:

未捕获的类型错误:无法读取未定义的属性“0”

谁能给我一些关于如何获取值或将对象存储在数组中的建议。

4

3 回答 3

2

因为 o 这里是一个对象广告而不是一个数组..使用.

试试这个

alert(data.o[0])

使用循环$.each函数获取里面对象的值o

data.o[0].each(function(i,v){
   console.log(v.q_id);
});
于 2013-02-09T19:11:56.533 回答
1

尝试使用 Std Object 将 JSON 发送到您的 javascript 代码

我的代码如下:

var model = new StdObject(); 模型->blabla =“某事”;

返回模型;

于 2015-06-16T02:49:33.660 回答
0
header("content-type:application/json");

  • 由服务器与您的 json 一起发送?

下一次检查:


  • 使用 $.getJSON 或 $.ajaxdatatype='json'

最后,然后访问您的对象data.o['0'].q_id

于 2013-02-10T05:34:38.443 回答