程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C#中給控件添加客戶端js事件

C#中給控件添加客戶端js事件

編輯:C#入門知識

今天做一個輸入界面,有一需求根據一個DropDownList選擇不同,後面部分出現不同的輸入界面,若把響應事件放在服務端去做,得頻繁刷頁面。就想放在客戶來處理顯示和隱藏相應的輸入界面。

  放在服務器端,也可以用ajax來實現,不刷頁面。但我覺得有更直接更簡單方法,用一個js事件是可以實現的。
 

  但,DropDownList不偈Button等控件提供了一些像"OnClientClick"前台事件,只有服務端事件。
 

  想到,所有C#頁面代碼,最終都是生成HTML,js事件也是最終運在浏覽器中,以Html為基礎的。服務端控件最終生成的HTML控件有什麼js事件,我們應該就能在aspx中給它添加相應的事件。

     DropDownList 生成的Htm是元素<Select>是有onchange事件的,所以我們也是可以給DropDownList添加onchange()事件,我們通常用的方法,在後台文件的Page_Load 事件中,給id為ddlExamType的DropDownList  添加onchange()事件:
 

                       ddlExamType.Attributes.Add("onchange","SelecteChanged("+this.ddlExamType.ClientID")");

 前台定義的js 函數:SelecteChanged()
 

      <script language="javascript">
        function selectChange(objID) {
            var ddlExamType = document.getElementById(objID);
             if (bool) {
                ……
            }
            else {
                ……
            }
        }
    </script>
 

    總結: C#的服務端控件,生成html時對應控件有什麼js事件,我們都能通過對控件 Attributes.Add()添加。
 

    

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved