2013-03-26 61 views
1

我希望創建一個圍繞jqPlot的MVC包裝。jcPlot的MVC HTML幫助包裝

我想要一個幫助對象來呈現所需的html容器元素和所需的Java腳本來繪製圖表。

東西,這將是這樣的:

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

現在我只是在最初的設計階段,我知道什麼jqPlot對象應該看起來像要做到這一點,我遇到的問題是假設要使用jqPlot繪製實際圖表的Java腳本。

假設我將呈現以下腳本在我.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代碼的最佳方式是什麼(就像這樣)?

回答

0

我想,聽一個甚至將是一個可能的解決方案,在這種情況下,甚至輸出或完成頁腳渲染。所以也許你的代碼會給出一個選項來聽那個事件並在那個時候渲染,但這當然是依賴於平臺的。我還參與了一個PHP的包裝,你可以在這裏分叉它:https://github.com/oumsofiane1/jqplotPHPwrapper.git ,只是實現了一個幫手,當然你可以擴展:-)

希望這有助於