1.AJAX html 传输json字符串:
js方法如下:
function saveRetYwlsh(){
var xmbh = document.getElementById("xmbh2").value;
var spsxid = document.getElementById("zxsxid").value;
var zjckYwlsh = $("input[name='jcxx.ywlsh']").val();
$.ajax({
type: "POST",
url: "${basePath}/nssjsl/sjsl!saveRetYwlsh.action",
//url: "http://localhost:8080/nssjsl/sjsl!ajaxValidateXtcl.action",
async: false,//使用同步的方式,true为异步方式
data: {'xmbh':xmbh,'spsxid':spsxid,'ywlsh':zjckYwlsh},
dataType: "html",
success: function (data) {
//console.log(typeof data);
data=eval(data);
data=data[0];
if(data.code==0){
$("input[name='jcxx.ywlsh']").val(data.ywlsh);
} },
error: function (mesg) {
alert(mesg);
return false;
}
});
}
2.巧妙运用eval()来解析返回的JSON字符串:
准备:后台返回字符串A,B,C;
字符串A:
String A="{\"array\":[]}";
字符串B:
String B="{\"obj\":{}}";
字符串C:
String C="[{\"obj\":{}}]"; or String C="[{\"array\":[]}]"; eval(A/B/C)执行结果只有字符串C可以正常被执行,故如果想要拿到A,B字符串格式的JSON数据,可以转成C对应的字符串格式的JSON数据。