我无法使用JSON.stringify,因为我无法生成要转换的模型的json格式。以下屏幕是JSON.stringify的结果,您可以在突出显示的部分看到json本身的一些不规则性。 JSON.stringify不会生成正确的json
下面是我用于填充型号代码:
LookupBase[] lCityLookups = bgReportsUtil.GetLookupCities(_PersonUID, _ClientUID);
JsonResult json = new JsonResult();
json.Data = lCityLookups; //support;
json.JsonRequestBehavior = JsonRequestBehavior.AllowGet;
json.MaxJsonLength = int.MaxValue;
return json;
下面是我的代码上的javascript:
$.ajax({
url: "SaladEntry/FillData",
type: "POST",
cache: false,
contentType: "application/json;",
data: paramSerialized,
success: function (resultVal) {
alert(JSON.stringify(resultVal));
});
上面的问题是解决了,但这并不能完全解决我的真正的问题。 我想创建一个图表使用谷歌图表,然后将创建它的图像文件并将其保存到服务器,但我坚持这个错误。
这是我如何创建图表的代码。
var arrMain = [];
for (var i = 0; i < resultVal.length; i++) {
var arr = [resultVal[i].ScaleMin, resultVal[i].PK, resultVal[i].CountryNo, resultVal[i].stringEffectiveDate, resultVal[i].ScaleMax, String(resultVal[i].Currency)];
arrMain.push(arr);
}
console.log(arrMain); //to remove
var data = new google.visualization.DataTable();
data.addColumn('number', 'ScaleMin');
data.addColumn('string', 'PK');
data.addColumn('number', 'CountryNo');
data.addColumn('string', 'stringEffectiveDate');
data.addColumn('number', 'ScaleMax');
data.addColumn('string', 'Currency');
data.addRows(arrMain);
var options = {
'title': 'Title',
'width': 800,
'height': 600
};
var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
google.visualization.events.addListener(chart, 'ready', function() {
chart_div.innerHTML = '<img src="' + chart.getImageURI() + '">';
});
chart.draw(data, options);
$.ajax({
url: "SaladEntry/SaveToLocal",
type: "POST",
data: { 'jsonData': chart.getImageURI() },
success: function (ret) {
alert(ret);
}
});
应该转换的原始值是什么? –
Kermit好像他有正确的答案,你正在返回JSON,然后尝试再次将其字符串化为JSON。 – George
我更新我的问题。 – Rob