解决方案 »
- 如何在打开页面时将光标定位在某个文本框?
- 跪求公历农历日期联动代码
- 在线等,请教问题
- jsp 和sql sql server 2005连接报错
- 求助!求助!firefox 浏览器下 URLDecode 函数脚本怎么写啊。。。急!在线等!!!!!!
- execCommand(CreateLink)的问题
- 超难问题,大家都来看看了,高手都来啊;从JAVASCRIPT动态添加的东东中写入数据库的问题!!!!!!!!!!
- 急救~!!自动生成htm页面的方法~!
- 我想在TEXT中,输入小时和分,初始化时自动显示冒号,冒号前后只能输入两位
- 一个用javascript实现返回值为多个时能否实现!
- 怎样做才能给每行都赋值
- 为什么输入为数字的时候,不执行alert("id只能由字母组成")
相关方法下载: http://www.json.org/js.html2. 转回对象用 eval("(" + jsonData + ")")
var jsonText = JSON.stringfy();
是取得JSON数据,我现在已经生成JSON数据了,所以和这个应该是无关的。
问题的关键:var method = "test"+"(\""+ objJson +"\")";
eval(method);似乎把JSON数据转为错误的值。
JSON.stringfy()
仅仅是对象-》JSON, JSON-》对象
json是个对象,后面那两个单引号代表字符串
一个对象 + 一个字符串。
对象首先转换成字符串,在加后面的''
程序上执行就是:
json.toString()+''
json.toString() 输出的是字符串'[object object]' 然后 在加'',
最后输出的是字符串“[object object]”,注意是字符串,不再是json对象了,你再怎么转都不行了<script type="text/javascript">
var json = {
"key1": "name",
"key2": "password"
};
var j = json + '';
alert(typeof j); //输出string </script>
var json = {
"key1":"name",
"key2":"password"
};
var objMethod= eval("fRunJson"); var a=json.toJSONString(); objMethod(a+'');//代码1}
<script src="json-js-file-download.js" type="text/javascript"></script>
function fRunJson(jsonData){
alert(jsonData);
var json=eval('(' + jsonData + ')');
alert(json.key1);
}window.onload=fCallJson;
json-js-file-download.js下载地址