Html控制項與Web控制項的區別與用途

2022-07-17 06:36:09 字數 1284 閱讀 4868

web控制項和html控制項雖然好多功能相同並且長得很像,但是它們的內部實現機制是完全不一樣的,web控制項要比html控制項執行效率要好。

1. 使用起來也相當方便,舉個簡單的例子,例如button的生成:

html控制項是將龐大控制項集合全部弄到頁面中,用到哪個功能,就設定一下屬性,如下:

這樣會占用相當大的控制項資源

web控制項是將整合式的拆解成單功能的:

這樣就可以節省不必要的控制項所占用的資源了

2.web控制項具有回送功能,能夠用viewstate維持控制項的狀態.

html控制項則不能,當點選頁面的操作,其狀態就會丟失.

可以做這樣的乙個實驗:

i. 分別建立兩個檔案:  a.html  b.aspx

ii.在a.html頁面中加html控制項的radiobutton和乙個button,

在b.aspx中加web控制項的radiobutton和乙個button

iii.a.html直接雙擊瀏覽器執行,b.aspx通過iis執行

iv.在a.html執行介面中,選中radiobutton,再單擊button按鈕,會發現radiobutton會

取消選中(丟失其狀態),但在b.aspx頁面執行同樣的操作,radiobutton不會丟失,因為viewstate

給它儲存了狀態. 您可以在執行介面點選瀏覽器選單"檢視"->「原始檔",開啟html**檔案,

找到加密後的viewstate,類似於下面:

其實viewstate實現原理也是將一些資訊放到隱藏的乙個控制項中,並且asp.net生成的viewstate資訊是儲存在客戶端的  

這裡要注意的一點是:

只有當格式為*.aspx檔案,並且控制項具有屬性:"runat=server"時,回送功能才能開啟

3. html控制項與web控制項最大的區別是它們對事件處理的方法不同。對於html窗體控制項,

當引發乙個事件時,瀏覽器會處理它。但對於web控制項,事件僅由瀏覽器生成,但瀏覽器不會處理它,客戶端要給伺服器發個資訊,告訴伺服器處理事件。 不過有些事件,比如:

按下鍵/移動/滑鼠等事件,asp.net中沒有這些事件

(因為這些事件即時性強,伺服器處理得不夠及時),這時候html控制項就發揮其作用了,結合html事件協助完成.

如下是一些html常用的事件:

在瀏覽器上執行的html控制項事件:

單擊時觸發:

滑鼠彈起時觸發:

//懸浮在控制項上方時觸發

//滑鼠在控制項上方移動時觸發

//雙擊控制項時觸發

//當焦點在控制項時,按鍵時觸發

//按鍵按下時觸發

WEB控制項

新年,把自己剛做的乙個控制項拿出來給大家分享,給自己動手做控制項的朋友切磋切磋。現在在山西長治帶一幫童子軍做乙個警用地理資訊系統,前期一直在做設計,現在專案剛剛進入編碼階段。一日有組員做乙個資料錄入介面,有日期輸入字段。該老弟直接用乙個textbox就完事了,我批評說應該使用日曆控制項讓使用者可以選...

WEB控制項

web控制項 我想了半天也不知道如何定義這個web控制項,它比html控制項難於理解,畢竟html太像原來我們熟悉的東東了。而web控制項確與我們平常見到的有很大的出入,不知道大家還記不記得我說過的一句話,那就是asp.的程式就像是寫vbvc中的視窗,先再這些視窗中加入我們的需要的控制項,然後再對這...

WEB控制項

web控制項 我想了半天也不知道如何定義這個web控制項,它比html控制項難於理解,畢竟html太像原來我們熟悉的東東了。而web控制項確與我們平常見到的有很大的出入,不知道大家還記不記得我說過的一句話,那就是asp.net的程式就像是寫vbvc中的視窗,先再這些視窗中加入我們的需要的控制項,然後...