asp.net中json报错 SyntaxError: missing ; before statement

Response.ContentType="application/json";StringjsonData=@"{""id1"":{""name"":""张三"",""... Response.ContentType = "application/json";
String jsonData = @"{""id1"":{""name"":""张三"",""sex"":""男""},""id2"":{""name"":""张三2"",""sex"":""2男""}}";
Response.Write(jsonData);

上面是创建json数据 http://www.xiayizhan178.cn/jsontest.aspx

然后前端用ajax接收
$.ajax({
url : 'http://www.xiayizhan178.cn/jsontest.aspx',
dataType : 'jsonp',
success : function(json){

}

然后就报错SyntaxError: missing ; before statement

求大神指点啊
展开
 我来答
漫步人生ahri
2015-01-10 · TA获得超过171个赞
知道小有建树答主
回答量:221
采纳率:0%
帮助的人:184万
展开全部
你的json字符串写错了,不能这样写
比如json格式{"name":"1111"}
在写成string的时候 应该是 string json="{\"name\":\"123\"}",
用转义字符\将双引号转义..不能用@, 更不能用双引号里面在加双引号

String jsonData = "{\"id1\":{\"name\":\"张三\",\"sex\":\"男\"},\"id2\":{\"name\":\"张三2\",\"sex\":\"2男\"}}";

另外@的用法
@是指强制不转义...但是像上面的jsonData = @"{""id1"":{""name"":""张三"",""sex"":""男""}这种根本没有转义,你如何强制不转义..

这个用法只有在比如 string a=@"dddd\r"这种,因为\r转义了,加了@就不转义了,就原本输出dddd\r,如何不加就只会输出dddd,然后\r换行
更多追问追答
追问
按照你说的 我改了下 但是还是同样的问题 解析不了
追答

我解析一点问题都没有

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式