如何从asp.net中的公共共享函数调用公共函数?

时间:2016-10-10 13:49:54

标签: asp.net vb.net function webmethod

我有这段代码:

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

1 个答案:

答案 0 :(得分:0)

PageMethod / WebMethod可以访问会话状态但无法访问页面上的控件,我们可以在客户端调用WebMethod时将控件的相关属性作为参数传递给WebMethod。