Поделиться через


ClientScriptManager.RegisterOnSubmitStatement(Type, String, String) Метод

Определение

Регистрирует оператор OnSubmit с объектом Page, используя тип, ключ и константу скрипта. Оператор выполняется, если HtmlForm представляется на рассмотрение.

public:
 void RegisterOnSubmitStatement(Type ^ type, System::String ^ key, System::String ^ script);
public void RegisterOnSubmitStatement (Type type, string key, string script);
member this.RegisterOnSubmitStatement : Type * string * string -> unit
Public Sub RegisterOnSubmitStatement (type As Type, key As String, script As String)

Параметры

type
Type

Тип регистрируемого оператора OnSubmit.

key
String

Ключ регистрируемого оператора OnSubmit.

script
String

Константа скрипта регистрируемого оператора OnSubmit.

Исключения

type имеет значение null.

Примеры

В следующем примере кода показано использование RegisterOnSubmitStatement метода .

<%@ Page Language="C#"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
  public void Page_Load(Object sender, EventArgs e)
  {
    // Define the name and type of the client script on the page.
    String csname = "OnSubmitScript";
    Type cstype = this.GetType();
        
    // Get a ClientScriptManager reference from the Page class.
    ClientScriptManager cs = Page.ClientScript;

    // Check to see if the OnSubmit statement is already registered.
    if (!cs.IsOnSubmitStatementRegistered(cstype, csname))
    {
      String cstext = "document.write('Text from OnSubmit statement');";
      cs.RegisterOnSubmitStatement(cstype, csname, cstext);
    }

  }
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head>
    <title>ClientScriptManager Example</title>
  </head>
  <body>
     <form    id="Form1"
            runat="server">
     <input type="submit"
            value="Submit" />
     </form>
  </body>
</html>
<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)

    ' Define the name and type of the client script on the page.
    Dim csname As String = "OnSubmitScript"
    Dim cstype As Type = Me.GetType()
    
    ' Get a ClientScriptManager reference from the Page class.
    Dim cs As ClientScriptManager = Page.ClientScript
    
    ' Check to see if the OnSubmit statement is already registered.
    If (Not cs.IsOnSubmitStatementRegistered(cstype, csname)) Then
      
      Dim cstext As String = "document.write('Text from OnSubmit statement.');"
      cs.RegisterOnSubmitStatement(cstype, csname, cstext)
      
    End If
    
  End Sub
  
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head>
    <title>ClientScriptManager Example</title>
  </head>
  <body>
     <form    id="Form1"
            runat="server">
     <input type="submit"
            value="Submit" />
     </form>
  </body>
</html>

Комментарии

Оператор OnSubmit однозначно идентифицируется по ключу и типу. Операторы с одинаковым ключом и типом считаются дубликатами. На странице можно зарегистрировать только одну инструкцию с заданным типом и парой ключей. Попытка зарегистрировать уже зарегистрированную инструкцию не приведет к созданию дубликата инструкции.

Вызовите метод , IsOnSubmitStatementRegistered чтобы определить, зарегистрирована ли инструкция OnSubmit с заданной парой ключей и типов, и избежать ненужных попыток добавления скрипта.

Параметр scriptRegisterOnSubmitStatement метода может содержать несколько команд скрипта, если они правильно разделены точкой с запятой (;).

Добавляет RegisterOnSubmitStatement скрипт, выполняемый перед отправкой страницы, и дает возможность отменить отправку.

Дополнительные сведения о html-формах и атрибуте OnSubmit см. на веб-сайте консорциума W3C.

Применяется к

См. также раздел