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);
パラメータ
- e
イベント データを格納している System.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