HTMLコントロール、HTMLサーバーコントロールとWebコントロールの違い

2851 ワード

HTMLコントロール、HTMLサーバーコントロールとWebコントロールの違い
1.定義:HTMLコントロール:HTML仕様で定義されている各種ラベル.HTMLサーバーコントロール:System.Web.UI.HtmlControlsネーミングスペースのコントロールクラス.Webコントロール:System.Web.UI.WebControlsネーミングスペースのコントロールクラス.
2.Webページでの宣言:
//HTML  :

//HTML     : HTML        runat  。

//Web  :
3.実行環境:HTMLコントロール:クライアントでのみ実行でき、JavaScriptなどのスクリプト言語で制御できる.HTMLサーバコントロール:サーバ側で実行されます.Webコントロール:サーバー側で実行します.
 4. 実行方法:
HTMLコントロール:クライアントのイベントに応答し、クライアントイベントはサーバにコミットされません.たとえば、ボタンをクリックしてテキストの内容を変更します.
  
    function ChangeText(){             
        document.getElementById("demo").value="Text Change";
    }


HTMLサーバーコントロール、Webコントロール:クライアントイベントがサーバーに提出され、サーバースクリプトの実行が終わった後、結果をクライアントに返す.
HTMLサーバーコントロール:
//JavaScript    

    void button2_click(object sender, EventArgs e) {
        TextBox1.Text ="I'mChanged;";
    }

//HTML  
Webコントロール:
//C#    
protected void Button1_Click(object sender,EventArgs e) {
    TextBox1.Text ="I'mChanged;";
 }
//HTML  
注意:HTMLコントロール、HTMLサーバーコントロール、Webコントロール呼び出し方法のイベントタイプを区別します.HTMLコントロールはクライアントのスクリプトコードのみを呼び出すことができます.次のようになります.οnclick="ChangeText()であり、パラメータ個数が0であってもメソッド名は括弧で囲まなければならない.HTMLサーバコントロールは、クライアントスクリプトコードを呼び出すこともできます.クライアント・スクリプト・コードが呼び出された場合:οnclick=”FuncName()”;サービス・エンド・コードを呼び出す場合:onserverclick="FuncNmae"(関数にパラメータがない場合はカッコを付けなくてもよい)Webコントロールは、クライアント・スクリプト・コードを呼び出すこともできます.次のようになります.
//          :

    function ChangeTextBox2(){           
        document.getElementById("TextBox2").value = "I'm Changed;";                 
    }
Webページの初期ロードイベントにクライアント応答イベントのスクリプトメソッドを追加します.
protected void Page_Load(object sender,EventArgs e)  {
    Button1.Attributes.Add("onclick","ChangeTextBox2();");
}
onclickプロパティは、コントロールが公開されていないプロパティに属し、Attributeコレクション(1)を使用する必要があります.
ボタンイベントのonclick、onserverclickの違い:
onclick:クライアントイベントを呼び出します.
onserverclick:サービス側イベントを呼び出します.
 
ボタンのクリックイベントとサーバのインタラクション:HTMLボタンクリックイベント:Formコントロールでボタンtypeタイプがsubmitの場合、フォーム情報がサーバに送信されます.その他の場合、デフォルトではクライアント・スクリプトにのみ応答します.HTMLサーバボタンクリックイベント:runatプロパティがserverとして宣言され、サーバ側スクリプトコードが呼び出されると、クリックするとサーバにデータがコミットされます.Webコントロール:ボタンをクリックすると、サーバにデータがコミットされます.(補足対象:コミットデータのタイプ:GET/POST)
参考資料:
1ASP.NET 4高級プログラム設計4.2.5章.