+ -
当前位置:首页 → 问答吧 → 装换json字符串出错

装换json字符串出错

时间:2011-09-08

来源:互联网

function test1() {
  $.post("AjaxTest.aspx", { xname: "John", xtime: "2pm" },
  function (data) {
  //var obj = $.parseJSON(data);
  //var obj = eval('(' + data + ')');
  alert(data);
  var obj = jQuery.parseJSON(data);
  alert(obj);
  s(obj);
  });
  }
后台的得到的字符串如下
string strJson = "[{dep:\"LAX\",rtn:\"pvg\"},{dep:\"dtw\",rtn:\"pek\"}]";

但是用jQuery.parseJSON(data);
会报错:Miscrosoft JScript compilation error:Syntax error

如果用var obj = eval('(' + data + ')');
可以转换,但是有的时候也报错:Syntax error

谢谢

作者: echoxue   发布时间: 2011-09-08

把后台返回字符串改成下面的格式:
string strJson = "[{\"dep\":\"LAX\",\"rtn\":\"pvg\"},{\"dep\":\"dtw\",\"rtn\":\"pek\"}]"

作者: shenhui_1   发布时间: 2011-09-08

引用 1 楼 shenhui_1 的回复:

把后台返回字符串改成下面的格式:
string strJson = "[{\"dep\":\"LAX\",\"rtn\":\"pvg\"},{\"dep\":\"dtw\",\"rtn\":\"pek\"}]"
规范的json其 key and value都要有引号,参照1楼

作者: ycmjh2010   发布时间: 2011-09-08

还有问楼主:[{dep:\"LAX\",rtn:\"pvg\"},{dep:\"dtw\",rtn:\"pek\"}]是json对象么?想想再回答

作者: ycmjh2010   发布时间: 2011-09-08