次の方法で共有


HtmlTextArea.OnServerChange メソッド

HtmlTextArea コントロールの ServerChange イベントを発生させます。この機能により、イベントのカスタム ハンドラを作成できます。

Protected Overridable Sub OnServerChange( _
   ByVal e As EventArgs _)
[C#]
protected virtual void OnServerChange(EventArgse);
[C++]
protected: virtual void OnServerChange(EventArgs* e);
[JScript]
protected function OnServerChange(
   e : EventArgs);

パラメータ

解説

HtmlTextArea コントロールの内容がサーバーへのポスト間で変更された場合は ServerChange イベントが発生します。

メモ   このイベントは、Submit ボタンのクリックなど、ユーザーがサーバーへのポストを開始したときにだけ発生します。このイベントによりサーバーへのポストが発生することはありません。

メモ    ServerChange イベントが正常に動作するためには、コントロールのビューステートを有効にしておく必要があります。

このイベントは通常、ユーザーがコントロールのテキストを更新したときに HtmlTextArea コントロールのデータ検証を実行するために使用されます。

イベントが発生すると、デリゲートを使用してイベント ハンドラが呼び出されます。詳細については、「 イベントの発生 」を参照してください。

OnServerChange メソッドを使用すると、デリゲートを結び付けずに、派生クラスでイベントを処理させることもできます。派生クラスでイベントを処理する場合は、この手法をお勧めします。

継承時の注意: 派生クラスで OnServerChange をオーバーライドする場合は、登録されているデリゲートがイベントを受け取ることができるように、基本クラスの OnServerChange メソッドを呼び出してください。

使用例

[Visual Basic, C#, JScript] ServerChange イベントのカスタム イベント ハンドラを指定および作成する方法の例を次に示します。 HtmlTextArea コントロールに入力された値が 10 文字を超えると、メッセージが表示されます。

 
<%@ Page Language="VB" AutoEventWireup="True" %>

<html>
<head>

   <script runat="server">

      Sub Server_Change(sender As Object, e As EventArgs) 
      
         
         If TextArea1.Value.Length > 10 Then
            Span1.InnerHtml = "Your comment cannot exceed 10 characters."
         Else
            Span1.InnerHtml = "You wrote: <br>" + TextArea1.Value
         End If
      
      End Sub

   </script>

</head>
<body>

   <form runat=server>

      <h3>HtmlTextArea Example</h3>

      Enter your comments: <br>

      <textarea id="TextArea1"
                OnServerChange="Server_Change" 
                runat="server"/>

      <br>

      <input type="submit"  
             value="Submit" 
             runat="server"/>

      <p>

      <span id="Span1" 
            runat="server" />

   </form>

</body>
</html>

[C#] 
<%@ Page Language="C#" AutoEventWireup="True" %>

<html>
<head>

   <script runat="server">

      void Server_Change(Object sender, EventArgs e)
      { 
         
         if (TextArea1.Value.Length > 10)
            Span1.InnerHtml = "Your comment cannot exceed 10 characters.";
         else
            Span1.InnerHtml = "You wrote: <br>" + TextArea1.Value;
      
      }

   </script>

</head>
<body>

   <form runat=server>

      <h3>HtmlTextArea Example</h3>

      Enter your comments: <br>

      <textarea id="TextArea1"
                OnServerChange="Server_Change" 
                runat="server"/>

      <br>

      <input type="submit"  
             value="Submit" 
             runat="server"/>

      <p>

      <span id="Span1" 
            runat="server" />

   </form>

</body>
</html>

[JScript] 
<%@ Page Language="JScript" AutoEventWireup="True" %>

<html>
<head>

   <script runat="server">

      function Server_Change(sender, e : EventArgs)
      { 
         
         if (TextArea1.Value.Length > 10)
            Span1.InnerHtml = "Your comment cannot exceed 10 characters.";
         else
            Span1.InnerHtml = "You wrote: <br>" + TextArea1.Value;
      
      }

   </script>

</head>
<body>

   <form runat=server>

      <h3>HtmlTextArea Example</h3>

      Enter your comments: <br>

      <textarea id="TextArea1"
                OnServerChange="Server_Change" 
                runat="server"/>

      <br>

      <input type="submit"  
             value="Submit" 
             runat="server"/>

      <p>

      <span id="Span1" 
            runat="server" />

   </form>

</body>
</html>

[Visual Basic] 

<%@ Page Language="VB" AutoEventWireup="True" %>

<html>
<head>

   <script runat="server">

      Sub Server_Change(sender As Object, e As EventArgs)
     
         ' The ServerChange event is commonly used for data validation.
         ' This method determines whether the comment entered into the
         ' the HtmlTextArea control is longer than 20 characters.
         If TextArea1.Value.Length > 20 Then
         
            Span1.InnerHtml = "Your comment cannot exceed 20 characters."
         
         Else
         
            Span1.InnerHtml = "You wrote: <br>" + TextArea1.Value
         
         End If
      
      End Sub

      Sub Page_Load(sender As Object, e As EventArgs)

         ' Create an EventHandler delegate for the method you want to 
         ' handle the event, and then add it to the list of methods
         ' called when the event is raised.
         AddHandler TextArea1.ServerChange, AddressOf Server_Change

      End Sub

   </script>

</head>
<body>

   <form runat=server>

      <h3>HtmlTextArea ServerChange Example</h3>

      Enter your comments (20 or fewer characters): <br>

      <textarea id="TextArea1"
                runat="server"/>

      <br>

      <input type="submit"  
             value="Submit" 
             runat="server"/>

      <p>

      <span id="Span1" 
            runat="server" />

   </form>

</body>
</html>


[C#] 

<%@ Page Language="C#" AutoEventWireup="True" %>

<html>
<head>

   <script runat="server">

      void Server_Change(Object sender, EventArgs e)
      { 
         // The ServerChange event is commonly used for data validation.
         // This method determines whether the comment entered into the
         // the HtmlTextArea control is longer than 20 characters.
         if (TextArea1.Value.Length > 20)
         {
            Span1.InnerHtml = "Your comment cannot exceed 20 characters.";
         }
         else
         {
            Span1.InnerHtml = "You wrote: <br>" + TextArea1.Value;
         }
      
      }

      void Page_Load(Object sender, EventArgs e)
      {

         // Create an EventHandler delegate for the method you want to
         // handle the event, and then add it to the list of methods
         // called when the event is raised.
         TextArea1.ServerChange += 
             new System.EventHandler(this.Server_Change);

      }

   </script>

</head>
<body>

   <form runat=server>

      <h3>HtmlTextArea ServerChange Example</h3>

      Enter your comments (20 or fewer characters): <br>

      <textarea id="TextArea1"
                runat="server"/>

      <br>

      <input type="submit"  
             value="Submit" 
             runat="server"/>

      <p>

      <span id="Span1" 
            runat="server" />

   </form>

</body>
</html>

[C++] C++ のサンプルはありません。Visual Basic、C#、および JScript のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

参照

HtmlTextArea クラス | HtmlTextArea メンバ | System.Web.UI.HtmlControls 名前空間 | ServerChange | System.EventArgs