0

jqplot円グラフを表示したいのですが、静的データで表示できませんが、データベースからの動的データで表示したいのです。そのために、データベースに接続し、データをリストにバインドしました。私の見解からそのリストを呼び出しますか?

$(document).ready(function(){
var data = [
['Heavy Industry', 12],['Retail', 9], ['Light Industry', 14], 
['Out of home', 16],['Commuting', 7], ['Orientation', 9]
];
 var plot1 = jQuery.jqplot ('chart1', [data], 
  { 
   seriesDefaults: {
    // Make this a pie chart.
    renderer: jQuery.jqplot.PieRenderer, 
    rendererOptions: {
      // Put data labels on the pie slices.
      // By default, labels show the percentage of the slice.
      showDataLabels: true
    }
  }, 
  legend: { show:true, location: 'e' }
  }
  );
  });

、今、私の要件はデータベースからの同じデータを表示することであり、このデータをコントローラーのリストにバインドしました。ビューからそのリストを呼び出すにはどうすればよいですか?

4

1 に答える 1

0

MVCを使用していることを考えると、キーと値のペアのリストを使用してすべてのデータをモデルに配置し、JavaScriptに渡すときにJSONに変換できます。これをajax経由で実行したい場合は、リクエストをjsonに送信し、コントローラーのActionメソッドからJSON結果を取得できます。

Javascriptシリアライザーを使用して、アクションメソッドでモデルをJsonに変換します

var data = somedata_with_KeyValuePair;
var model = new MyModel();
var serializer = new JavaScriptSerializer();
model.JsonData = serializer.Serialize(data);
return View(model);

そして、このように使用します

var data = <%= Model.JsonData %>

または、MVC 3を使用している場合は、以下も機能します

@Html.Raw(Json.Encode(YourObjectContaingListOfKeyValue)) seems to do the trick.
于 2013-03-05T10:36:02.710 に答える