作者shathyst (影紫)
看板Ajax
标题[问题] AJAX回传值开头0时Chrome Opera Safari 错
时间Thu May 19 08:38:44 2011
※ [本文转录自 Web_Design 看板 #1Dr6K8i2 ]
作者: shathyst (影紫) 看板: Web_Design
标题: [问题] AJAX回传值开头0时Chrome Opera Safari出错
时间: Thu May 19 08:32:05 2011
抱歉又来问问题了:P
我刚刚发现用AJAX取json回传数值的开头如果是0
例如: 080
这样在jQuery .ajax()的时候会跳错误讯息耶:
[object XMLHttpRequest]
parsererror
SyntaxError: JSON.parse: Illegal number format (excessive leading 0): 080],
在IE8和Firefox上面都没问题
只有在Chrome、Opera、Safari上面执行有问题
出问题的网页在这里:
http://howar31.tk/labs/invoice/
在选月份时选99年1-2月、5-6月、9-10月都会出问题 因为都有开头为0的资料
该json档分别在这:
1-2月
http://howar31.tk/labs/invoice/data/20100102.js
5-6月
http://howar31.tk/labs/invoice/data/20100506.js
9-10月
http://howar31.tk/labs/invoice/data/20100910.js
请问这种问题有解吗?感觉像是浏览器的问题
有没有其他方法可以解决这种问题呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 211.79.140.134
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 211.79.140.134
1F:→ mesak:if (Invoice[x].number[i] >= 0 && 05/19 09:29
2F:→ mesak:Invoice[x].number[i] != ''){ 05/19 09:29
3F:→ mesak:json传过来的型态是字串,不能当数值去验证 05/19 09:29
4F:→ mesak:如果确保JSON是你输入的 Invoice[x].number[i] >=0 就拿掉 05/19 09:30
5F:→ shathyst:感谢各位,我已经解决问题了,该网站已经正常罗! 05/19 13:03