从 jquery 数组中删除开始/结束双引号




我用这个jquery从php获取数据:

var reserved=null;
$.ajax({
        url: 'test.php',
        type: 'GET',
        dataType: 'html',
        async: false,
        success: function(data) {
            reserved=data;
        } 
     });
var res = new Array(reserved);
console.log(res);

来自 php 的数据如下所示: "2014-02-28", "2014-03-01", "2014-03-02"
console.log 返回以下内容: [""2014-02-28", "2014-03-01", "2014-03-02""]和 jquery 不起作用
但是当我手动输入日期而不是保留时,它可以工作。
像这样: var res = new Array("2014-02-28", "2014-03-01", "2014-03-02");
控制台.log ["2014-02-28", "2014-03-01", "2014-03-02"]
所以在我看来,问题在于数组开头和结尾的引号。它们可以被删除吗?

使用JSON.parse

var res = JSON.parse('['+reserved+']');

小提琴演示

尝试使用

var res = $.parseJSON(reserved);
console.log(res);

编辑:您不需要创建数组。

你需要在php中对结果进行编码,如下所示:

测试.php文件

//your code
echo(json_encode($your_array);

和你的阿贾克斯:

$.ajax({
        url: 'test.php',
        type: 'GET',
        dataType: 'json',
        async: false,
        success: function(data) {
            reserved=data;
        } 
     });

最新更新