Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery Json.parse返回null_Jquery_Json - Fatal编程技术网

Jquery Json.parse返回null

Jquery Json.parse返回null,jquery,json,Jquery,Json,我不确定为什么下面返回null这是我的json字符串。 这是由JSON字符串格式引起的吗 var data = '{"pvd": { "plannerViewDetailSummary":{"intTargetedCard":6549,"intDeliveredOffer":1,"intRedeemedOffer":1,"dtBegin":"\/Date(1380556800000)\/","dtEnd":"\/Date(1383148800000

我不确定为什么下面返回null这是我的json字符串。 这是由JSON字符串格式引起的吗

var data = '{"pvd":
            {
            "plannerViewDetailSummary":{"intTargetedCard":6549,"intDeliveredOffer":1,"intRedeemedOffer":1,"dtBegin":"\/Date(1380556800000)\/","dtEnd":"\/Date(1383148800000)\/"},
            "plannerViewDetailChannel":[{"nvarDesc":"Email"}],
            "plannerViewDetailTargetCust":[{"varGroupName":"ALL"}]
            }
    }'

var obj = jQuery.parseJSON(data);
if (obj == null) {
    alert('null');
}

json中删除换行符或通过
\
转义,然后进行类似操作

var data =  '{"pvd":{"plannerViewDetailSummary":{"intTargetedCard":6549,"intDeliveredOffer":1,"intRedeemedOffer":1,"dtBegin":"\/Date(1380556800000)\/","dtEnd":"\/Date(1383148800000)\/"},"plannerViewDetailChannel":[{"nvarDesc":"Email"}],  "plannerViewDetailTargetCust":[{"varGroupName":"ALL"}]}}';
var obj = jQuery.parseJSON(data);
if (obj==null){
   alert('null');
}
console.log(obj);

字符串中的换行符不是有效的JSON。移除它们,它将正常工作(或使用
\
将它们转义)。

给你

问题在于
数据
至少在javascript中不能以这种方式格式化字符串

var data = '{"pvd":{"plannerViewDetailSummary":{"intTargetedCard":6549,"intDeliveredOffer":1,"intRedeemedOffer":2,"dtBegin":"\/Date(1380556800000)\/","dtEnd":"\/Date(1383148800000)\/"},"plannerViewDetailChannel":[{"nvarDesc":"Email"}],"plannerViewDetailTargetCust":[{"varGroupName":"ALL"}]}}'

var obj = jQuery.parseJSON(data);
if (obj == null) {
    alert('null');
} else {
    alert('ok');
}

这是一个有效的Json吗?当您正确格式化字符串(即删除返回值)时,代码可以很好地工作: