0

当 Ajax 页面方法函数返回成功并且没有按钮单击作为受保护的子对象时,我需要调用一个函数。我无法将 ClientScript 直接包含在方法或共享函数中,并且该方法不允许在没有Shared的情况下调用Public Sub UpdateText() ...任何想法?

'''' Method for Ajax with SQL and other functions
'''' ----------------------------------------------------------
<WebMethod()> _
Public Shared Function SendOrder(ByVal fulldata As String, 
_ByVal id As Integer) As String

            Try

            UpdateText()
            Return "Success"

        Catch ex As Exception
            Return "failure"
        End Try

End Function

这是我需要调用的函数

'''' Function to call only on success
'''' ----------------------------------------------------------
Public Sub UpdateText()

    Dim jsUpdate As String
    Dim cstype As Type
    Dim cs As ClientScriptManager = Page.ClientScript
    Dim jsUpdateTxt As String = "<script language='javascript'>...</script>"
    ClientScript.RegisterStartupScript(cstype, jsUpdate, jsUpdateTxt)

End Sub
4

1 回答 1

0

Page 方法调用必须是静态的。它们不能与 Page 类的实例属性和方法交互,因为页面方法调用不会创建 Page 或其任何控件的实例。

在返回成功或失败后,您可以像这样在客户端编写 ajax 方法

PageMethods.SendOrder(fulldata,id,OnRequestComplete, OnError);

 function OnRequestComplete(result) {
        //ToDo
      }    

  function OnError(result) {
        //ToDo
      } 
于 2014-02-09T15:08:47.297 回答