其實這也不是什麼新鮮的東西,也不是什麼不好理解的,不過這都是個老程式員的體會,對於新手入門來說,必有一些茫然的,為什麼有了WEB控制項還要HTML控制項,其實HTMl控制項遠沒有WEB控制項強大,只不過是個過度吧,不過它也有好處,就是比WEB控制項解析要快,因為WEB控制項還要經過伺服器返回.
WEB控制項簡潔點,功能強大點;
HTML控制項對ASP移植方便點,因為只要在屬性上加上runat="srever"就可以在服務端上運行了....
HTML控制項不具備任何抽象能力。每種控制項與標記都是一一對應的。
Web控制項建立了更進階別的抽象,它們沒有任何對應的HTML標記(如Calendar和DataGrid)。因為它們不直接映射為HTML標記,所以Web控制項還能夠在適當的場合起到合并功能的作用(例如用一個TextBox控制項來代替多個標記)。這種抽象為使用第三方提供的種類豐富的控制項工具箱開啟了方便之門。
物件模型
HTML控制項提供了以HTML為中心的物件模型。每種控制項都包括一個屬性集,可以使用該屬性集來控制標記的屬性。這個屬性集使用了字串名/值對,並且不是強型別的。
在使用HTML控制項時,您的編程方式與使用傳統的ASP進行編程十分類似。因而,HTML控制項提供了一條快捷的移植途徑-可以通過添加一個runat="server"屬性來將一個標記轉變為一個伺服器控制項。
Web控制項提供了基於表單的、類似於VisualBasic的編程模式。它們也提供了屬性集,但它們的主要目標在於提供一種格式豐富、型別安全且具有一致性的物件模型。每種Web控制項都包含一組標準的屬性,如ForeColor、BackColor、Font等。
這種物件模型還在像VisualStudioNET這樣的設計工具中提供了更豐富的設計時體驗。
目標瀏覽器
HTML控制項不會自動檢測請求頁面的瀏覽器的能力,也不會修改它們提供的HTML。在使用這組控制項時,您要負責確保您的頁面能同時在進階和低級瀏覽器上工作。
Web控制項能夠自動對它們產生的結果進行調整,以確保輸出結果在進階瀏覽器和低級瀏覽器上的工作同樣出色。Web控制項還能夠針對不同的瀏覽器提供不同的行為,從而充分發揮瀏覽器的潛力。例如,validation控制項還可以通過用戶端的指令碼來建立用於進階瀏覽器的具有高度互動性的頁面。
對產生的HTML的控制
HTML控制項允許您完全控制所顯示的內容以及發送到客戶機瀏覽器的內容。
Web控制項提供了更為豐富的物件模型,以及適應多種瀏覽器的能力。因而,它們沒有提供對輸出結果的相同程度的控制能力。
在開發應用程式時,可以根據這兩組控制項的能力以及您的需求來從中進行選擇。還可以選擇在同一頁上混合使用這兩組控制項,使用一種類型的控制項並不妨礙您同時使用另一種類型的控制項。
web控制項click會讓頁面遞交到後台
html控制項的載入速度要快過web控制項
不用回傳的時候可以考慮使用html控制項
如果事回傳盡量使用web控制項
web控制項是在伺服器端啟動並執行,而html控制項是用戶端啟動並執行.
通俗點說就是web控制項是在伺服器端運行後產生靜態代碼傳給用戶端瀏覽器,html控制項就白了就是原來的html標籤,是直接被用戶端瀏覽器解釋的.
要觸發html控制項的事件,可以使用javascript指令碼來實現,具體的參考下javascript的相關文檔.