2016-10-10 219 views
0

我有這樣的代碼:如何從asp.net中的公共共享函數調用公共函數?

Default.aspx的(JavaScript的:)

<script type="text/javascript"> 
     function ShowChartSpider(group_id) { 

      $.ajax({ 
       type: "POST", 
       contentType: "application/json; charset=utf-8", 
       url: "Default.aspx/MethodToCreateChart", 
       dataType: "json", 
       data: "{'parameter1':" + JSON.stringify(group_id) + "}", 

       success: function (data) { 
        alert("all correct"); 

        console.log(data); 
       }, 
       error: function (data) { 
        alert(data); 
        console.log(data); 
       } 
      } 
      ); 
     } 
    </script> 

Default.aspx.vb

<WebMethod()> 
    Public Shared Function MethodToCreateChart(parameter1 As String) 

     WebChartControl1.Series("sectorbuys").Points.Add(New SeriesPoint("value1", "156")) 

      WebChartControl1.DataBind() 
     End If 


     Return "" 
    End Function 

從圖表中視圖的aspx的代碼:

<dxchartsui:WebChartControl ID="WebChartControl1" runat="server"> 
// some code 
    </dxchartsui:WebChartControl> 

所以在MethodToCreateChart我不敢說我​​的WebChartControl1,但如果除去shared我可以調用WebChartControl1控制,但AJAX方法停止工作,所以我怎麼能叫控制在我的aspx保持我 Public Shared Function MethodToCreateChart

回答

0

PageMethod/WebMethod可以訪問會話狀態,但不能訪問頁面上的控件,我們可以在客戶端調用WebMethod時,將控件的相關屬性作爲參數傳遞給WebMethod。

+1

對不起,但我還不是很明白你的回答 –

+0

你可以讓webchartcontrol類共享嗎? – inan

+1

webchartcontrol就像是一個文本框或另一個控件,只是一個例子,如果我想調用這個控件,我也有同樣的問題:示例