如何在js中去掉json数据中的转义附
本人刚入行不久,酝酿了一段时间在跟着做项目,遇到了第一个自己解决不了的问题,希望各位大大们帮忙解决一下。问题:本人通过window.open方法打开一个页面来传给opener页面一个json数据,在opener中的js方法里面接收之后,要把数据添加到原先有的json数据中,结果添加完之后json数据中有不明转义附!!
function ecPerAddInput(jsonAddStr){//给工作流表单的隐藏框添加值
var jsonStr=$("DATA_99").value;
alert(jsonStr);
if(jsonStr == ""||jsonStr == null){
$("DATA_99").value=jsonAddStr;
}else{
//var json = eval('(' + jsonStr + ')');//由JSON字符串转换为JSON对象
var json =JSON.parse(jsonStr);
alert(json);
//var jsonAdd = eval('(' + jsonAddStr + ')');
var jsonAdd =JSON.parse(jsonAddStr);
//alert(jsonAdd[0]);
json.push(jsonAdd[0]);
alert(json);
var jsonLast=JSON.stringify(json); //将JSON对象转化为JSON字符
alert(jsonLast);
$("DATA_99").value=jsonLast;
}
ecPerShowList();
}
------解决方案--------------------你这个测试数据也没问题啊 。
var jsonAdd='[{"name1":"name1","name2":"name2","name3":"name3","name4":"name4","name5":"name5","name6":"name6"}]'
var s =eval("("+jsonAdd+")");
for(var i in s[0]){
alert("key:--"+i+"---value--"+s[0][i]);
}
------解决方案--------------------不需要去斜杠,是这样的,本身就是在字符串中作为转义用。解析时没有\的。