1

jqPlot の MVC ラッパーを作成したいと考えています。

必要な html コンテナ要素とチャートを描画するために必要な Java スクリプトをレンダリングするためのヘルパー オブジェクトが必要です。

次のようになります。

@Html.jqPlot()
     .ChartType(eChartTypes.PieChart)
     .ChartData(someData)
     .RenderChart();

今、私は初期設計段階にあるだけで、それを達成するためにjqPlotオブジェクトがどのように見えるべきかを知っています.

.RenderChart()メソッドで次のスクリプトをレンダリングするとします。

public string RenderChart()
{
   string chartCode = string.format(@"
      <script type="text/javascript" src="../src/plugins/jqplot.canvasTextRenderer.min.js"></script>
      <script type="text/javascript" src="../src/plugins/jqplot.canvasAxisLabelRenderer.min.js"></script>
      $(document).ready(function(){
         var plot1 = $.jqplot ('{0}', [{1}]);
      });
   ",this.ChartGuid, this.ChartData);
   return chartCode;
}

上記は実際のコードではなく、アイデアの一般的な表現です。

したがって、問題は、ヘルパーがJSコードをHtmlドキュメントの本文に出力しないようにすることです。さらに、必要なスクリプトの一部がhtmlの下部にある可能性があるため、それを許可できません練習状態)。

助言がありますか ?状況に応じて (このような) HTML ヘルパーを使用して JS コードを発行する最良の方法は何でしょうか?

4

1 に答える 1

0

イベントを聞くことが可能な解決策になると思います。この場合、フッターのレンダリングを出力または終了するイベントです。そのため、イベントをリッスンしてその時点でレンダリングするオプションとしてコードが提供される可能性がありますが、これはもちろんプラットフォームに依存します。ここでフォークできるphpラッパーにも取り組みました: https://github.com/oumsofiane1/jqplotPHPwrapper.git ヘルパーを実装しましたが、もちろんそれを拡張できます:-)

お役に立てれば

于 2013-04-22T06:47:37.247 に答える