【发布时间】:2012-11-14 16:36:14
【问题描述】:
这是PHP中的一行json_encode函数
echo $_GET['callback'].'('.json_encode($jsona).')';
返回
jQuery183022578700515441597_1353992348618([{"label":["done","open","pending","draft","cancel"],"values":[{"label":"August","values":["175","32","1","0","0"]},{"label":"September","values":["450","130","1","0","1"]},{"label":"October","values":["150","396","1","5","0"]},{"label":"November","values":["0","0","0","3","0"]}]}])
我通过 JS (jQuery) 得到它们
$.ajax({
url: 'ajax/_state.php',
type: 'GET',
dataType: 'jsonp',
dataCharset: 'jsonp',
success: function (data) {
console.log(data);
}
});
但是返回的 JSON 中包含的所有数字都变成了字符串(不知道为什么?)。
例如,我如何将它们转换为整数;
{
'label': ['done', 'open', 'pending', 'draft', 'cancel'],
'values': [
{
'label': 'Sept',
'values': [20, 40, 15, 5,2]
},
{
'label': 'Oct',
'values': [30, 10, 45, 10]
},
{
'label': 'Nov',
'values': [38, 20, 35, 17]
}
]
}
【问题讨论】:
-
如果它们被打印为字符串,那么它们在 PHP 中一开始就是字符串。
$jsona来自哪里? -
正如 loganfsmyth 所说。所以事情需要在 PHP 而不是 javascript 中修复。
-
$jsona 来自这里stackoverflow.com/questions/13576402/…
标签: php javascript jquery json jsonp