Вызов ClientScript в методе Ajax без нажатия кнопки на странице ASP.NET

Мне нужно вызвать функцию, когда функция метода страницы Ajax возвращает успех и без нажатия кнопки в качестве защищенного подпрограммы. Я не мог включить ClientScript непосредственно в метод или в разделяемую функцию, и метод не позволяет вызывать Public Sub UpdateText() без Shared... какие-либо идеи?

'''' 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

1 ответ

Вызовы методов страницы должны быть статическими. Они не могут взаимодействовать со свойствами и методами экземпляра вашего класса Page, поскольку вызов метода страницы не создает ни экземпляра страницы, ни какого-либо из ее элементов управления.

после возврата либо успеха, либо неудачи, вы можете кодировать методы ajax на стороне клиента так

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

 function OnRequestComplete(result) {
        //ToDo
      }    

  function OnError(result) {
        //ToDo
      } 
Другие вопросы по тегам