Ajax 板


LINE

我用Firefox + Firebug 除错 当我呼叫address.jsp, 它会回传 [{"areaname":"台中市大里区","areacode":"6602800000","zipcode":"412"}] 可是Firebug 的控制台会回传错误 语法错误 error source line: [{"areaname":"台中市大里区","areacode":"6602800000","zipcode":"412"}] jquery-1.7.2.js(第 7746 行、1 列) 错误发生点在alert aa 与 alert bb 之间, 程式码如下 alert('aa'); $.ajax({ url: "XXXX/js/address.jsp", data: { area:addCtrl.value , Type:"Query"}, dataType: 'text', async: false, error: function(xhr) { alert("无法取得代码档!!"); }, success: function(response) { alert('bb'); var json = JSON.parse(response.replace(/(\r\n|\n|\r)/gm,"")); alert('cc'); }); 这问题搞了快一天了,json 语法本身并没错,中括弧去掉,我也试过了 虽然不影响後续程式,但是想请问各位先进, 是哪里做错呢?为什麽FireBug会一直报错? --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 210.63.96.2
1F:→ lyforever:JSON.stringify(response), 不过你确定你回传的是json? 06/04 17:42
确定是json [{"areaname":"台中市大里区","areacode":"6602800000","zipcode":"412"}] 您的方法我刚刚试过,还是不行, PS:在IE8是正常的,FF就是不行 ※ 编辑: pttnews 来自: 210.63.96.2 (06/04 18:07)
2F:推 s25g5d4:先trim在parse 06/04 18:30
3F:→ lyforever:我其实想问 你dataType为什麽要设text.... 06/04 18:35
4F:→ lyforever:http://api.jquery.com/jQuery.ajax/ 06/04 18:35
5F:→ lyforever:http://api.jquery.com/jQuery.ajax/ 06/04 18:35
6F:→ lyforever:The type of data that you're expecting back from the 06/04 18:35
7F:→ lyforever:server 06/04 18:36
dataType 设为 json 这个方法,很惭愧,我不熟悉, 我一直都是 $.parseJSON(response) , JSON.parse(response)是初次使用 不过这两种方法都试过。 我觉得问题不是出在 var json = JSON.parse(response.replace(/(\r\n|\n|\r)/gm,"")); 因为alert('bb')之前,FF就报出错误讯息了 alert('bb'); var json = JSON.parse(response.replace(/(\r\n|\n|\r)/gm,"")); alert('cc'); 此外有热心大大来信,要我测试 alert( JSON.parse( '[{"areaname":"台中市大里区","areacode":"6602800000","zipcode":"412"}]' ) ); 这一行执行正确无误 ※ 编辑: pttnews 来自: 210.63.96.2 (06/04 19:17)
8F:推 No:你的code跟这里贴的一模一样吗? success 少了大括号 } 喔 06/04 19:30
9F:推 s25g5d4:trim不是这样用的 你可以直接response.trim() 06/04 19:32
10F:→ s25g5d4:不然就console.log(response)看他到底送甚麽东西过来 06/04 19:33
yes sir! console.log("("+response+")"); 出现 ( [{"areaname":"台中市大里区","areacode":"6602800000","zipcode":"412"}] ) console.log("("+response.replace(/(\r\n|\n|\r)/gm,"")+")"); 出现 ([{"areaname":"台中市大里区","areacode":"6602800000","zipcode":"412"}]) 谢谢您 ※ 编辑: pttnews 来自: 210.63.96.2 (06/05 09:57) 因为 lyforever大大,提到dataType为什麽要设text. 所以我换成以下两种方法测试,也是不行,报同样错误。 $.getJSON( "XXXX/js/address.jsp", { area:addCtrl.value , Type:"Query"}, function(response){ alert(response); } ); $.ajax({ url: "XXXX/js/address.jsp", data: { area:addCtrl.value , Type:"Query"}, dataType: 'json', async: false, error: function(xhr) { alert("无法取得代码档!!"); }, success: function(json) { alert(response); } }); ※ 编辑: pttnews 来自: 210.63.96.2 (06/05 10:47)
11F:→ buganini:把中文去掉呢? 另外多余的换行应该是在server side就 06/05 16:35
12F:→ buganini:处理好不是传回来再取代吧… 06/05 16:35







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Tech_Job站内搜寻

TOP