string msg="{ msginfo:[";
msg += "{";
msg += "msgs:'" + "完成"+"',";
msg += "flag:'" + "true" + "',";
msg += "thumb:'" + tpath+"',";
msg += "path:'" + imgpath + "'";
msg += "}";
以下是JSON组织代码,其中thumb和path的值为 一个图片的绝对路径如:C:\xxx\xxx\xxx\dd.img
下面是我的前端解析代码:
$.ajax({
type: "POST",
dateType: "json",
url: "xxxx.aspx",
data: "path=" + path,
success: function (data) {
var jsonData;
jsonData = eval(data);
$.each(jsonData.msginfo, function (idx, item) {
}
}
在解析时 jsonData = eval(data); 这里报错,报错IE 提示是 “SCRIPT1023: 缺少十六进制数字”
请教各位大侠解答。
------最佳解决方案--------------------------------------------------------
下面的代码是亲自测试过的,IE8、Firefox16 完全可用。
你新建一个页面,名称: Default8.aspx
页面:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default8.aspx.cs" Inherits="Default8" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>无标题页</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.js" type="text/javascript"></script>
<script type="text/javascript">
$(function(){
var path="path"
$.ajax({
type: "POST",
dateType: "json",
url: "Default8.aspx",
data: "path=" + path,
success: function (jsonData) {
jsonData = $.parseJSON(jsonData);
$.each(jsonData.msginfo, function (idx, item) {
alert(this.msgs);
});
}
});
$.getJSON("Default8.aspx","path=" + path,function (jsonData) {
$.each(jsonData.msginfo, function (idx, item) {
alert(this.msgs);
});
});
});
</script>
</head>