2017-04-20 4 views
3

変換したいモデルのjson形式を生成できないため、JSON.stringifyで問題が発生します。下の画面は、JSON.stringifyの結果であり、ハイライト部分ではJSON自体のいくつかの不規則性を見ることができます。以下はenter image description hereJSON.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)); 
}); 

問題の上に解決するが、これは完全に私の本当の問題を解決していないです。 Googleグラフを使用してグラフを作成した後、画像ファイルを作成してサーバーに保存しますが、このエラーが発生しました。 enter image description here

エラーが発生した場所に行く場合。 enter image description here

これは、グラフの作成方法のコードです。

 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); 
} 
}); 
+0

変換されるはずの元の値は何ですか? –

+0

Kermitは正しい答えを持っているようですが、JSONを返してからJSONに再度ストリングしようとしています。 – George

+0

私の質問が更新されます。 – Rob

答えて

0

エラーで述べたように、チャートが

を描かれている前に、あなたは、グラフの画像を取得しようとしているが、チャートの 'ready'イベント内でのAjaxポストを移動

...

は、次のスニペットを参照してください。 ..

google.visualization.events.addListener(chart, 'ready', function() { 
    chart_div.innerHTML = '<img src="' + chart.getImageURI() + '">'; 

    $.ajax({ 
    url: "SaladEntry/SaveToLocal", 
    type: "POST", 
    data: { 'jsonData': chart.getImageURI() }, 
    success: function (ret) { 
     alert(ret); 
    } 
    }); 
}); 
1

resultValは、すでにあなたが直接alert(resultVal)を呼び出すことができ、文字列化されています。

関連する問題