ajax和json错误.php帖子错误

error with ajax and json ..with php post

本文关键字:错误 php ajax json      更新时间:2024-06-22

好吧,我的头撞在桌子上了。我在php脚本中发布了一个方法,并返回了一个json数组

public function test()
    {
              return json_encode($this->runResults() );
            exit;
        }

    }

上面(echo json_encode($this->runResults() )的回波会给你下面的

[
{"code":"123456","date_created":"2012-07-09","date_expires":null},{"code":"3453432","date_created":"2012-07-09","date_expires":null},
{"code":"3sdf324","date_created":"2012-07-09","date_expires":null},
{"code":"weewr22","date_created":"2012-07-09","date_expires":"2012-07-19"}
]

现在在我的javascript中,我有这个

 $.ajax({
            url : 'test',
            type : 'POST',
            data : {
                data1: adataval,
                data2: bdataval
            },
            success : function(data) {
               alert(data.length);
            },
            error : function() {
            }
        });

当它读取每一个字符时,它会在1000秒内发出警报。。正如我所希望的长度应该是4。所以我把上面的ajax改成这个

 $.ajax({
            url : 'test',
            type : 'POST',
datatype: 'json'
            data : {
                data1: adataval,
                data2: bdataval
            },
            success : function(data) {
               alert(data.length);
            },
            error : function() {
            }
        });

正如您所看到的,我添加了数据类型:"json"。但后来我开始未捕获错误:NOT_FOUND_ERR:DOM异常8

我做错了什么?

试试这个PHP脚本

public function test()
{
    echo json_encode($this->runResults());
}

更新:

也在ajax方法中使用dataType而不是datatype

alert( $.parseJSON(data).length );
此外,在脚本中,您应该将内容类型设置为json:header('Content-type: application/json');