我有一个JavaScript数组,其中包含一个URL.如果我尝试简单地将URL放在页面中(该数组位于涉及Yahoo! Maps API的项目中),则会显示应该显示的URL.
但是,如果我尝试重定向或只是对链接数组元素执行"警报",我得到:
function(){return JSON.encode(this);}
据我所知,这是因为浏览器在呈现页面时会执行JSON.encode,因此链接显示正常.我已经尝试了几种方法使其重定向(这是我想要对链接做的)正确(包括'eval'的使用),但没有运气.
遵循一些建议我已经运行eval('(' + jsonObject + ')')
但它仍然返回相同的输出.
那怎么回事?
var obj = jQuery.parseJSON('{"name":"John"}'); alert( obj.name === "John" );
请参阅jQuery API.
假设您在PHP中有一个数组作为带有5个字段的$ iniData.如果使用ajax -
echo json_encode($iniData);
在Javascript中,使用以下内容:
如果您在警报中收到此文本:
function(){return JSON.encode(this);}
当你尝试提醒(myArray [i])时,有几种可能性:
myArray [i]是一个函数(最有可能)
myArray [i]是文字字符串"function(){return JSON.encode(this);}"
myArray [i]有一个.toString()方法,它返回该函数或该字符串.这是三者中最不可能的.
最简单的方法是检查typeof(myArray [i]).