日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Asp.Net 不同區(qū)別的 OnClick ( onserverclick

系統(tǒng) 2211 0

Asp.Net 不同區(qū)別的 OnClick ( onserverclick, onclientclick )

下面以 HTML的按鈕( system.web.ui.htmlcontrols ) 和 ASP.NET服務(wù)端按鈕 ( system.web.ui.webcontrols ) 為例:
1. HTML控件,如IMG的輸入按鈕等 的 onclick ( 客戶端 )和 onserverclick ( 服務(wù)端 )事件,注意 runat="server"。。。

Asp.Net 不同區(qū)別的 OnClick ( onserverclick, onclientclick )

此處的onclick先于onserverclick執(zhí)行。


2.WEB控件,如<asp:button 按鈕等 的 onclientclick( 客戶端 ) 和 onclick ( 服務(wù)端 )事件。。。

此處的onclientclick先于onclick執(zhí)行。


onclientclick 事件來自2.0, 它用來取代下列代碼。。。

總之,客戶端點(diǎn)擊事件先于服務(wù)器端點(diǎn)擊事件執(zhí)行。也就是說,先執(zhí)行客戶端的Javascript,然后到服務(wù)器端執(zhí)行服務(wù)器的相關(guān)代碼。

附:html控件、html服務(wù)器控件和web用戶控件

asp.net之所以現(xiàn)在開發(fā)方便和快捷,關(guān)鍵是它有一組強(qiáng)大的控件庫(kù),包括web服務(wù)器控件,web用戶控件,web自定義控件,html服務(wù)器控件和html控件等。這里主要說說html控件、html服務(wù)器控件和web服務(wù)器控件的區(qū)別。
1、html控件:就是我們通常的說的html語(yǔ)言標(biāo)記,這些語(yǔ)言標(biāo)記在已往的靜態(tài)頁(yè)面和其他網(wǎng)頁(yè)里存在,不能在服務(wù)器端控制的,只能在客戶端通過javascript和vbscript等程序語(yǔ)言來控制。<input type="button" id="btn" value="button"/>
2、html服務(wù)器控件:其實(shí)就是html控件的基礎(chǔ)上加上runat="server"所構(gòu)成的控件.它們的注意區(qū)別是運(yùn)行方式不同,html控件運(yùn)行在客戶端,而html服務(wù)器控件是運(yùn)行在服務(wù)器端的。參考其他資料是這樣說的: 當(dāng)ASP.NET 網(wǎng)頁(yè)執(zhí)行時(shí),會(huì)檢查標(biāo)注有無runat 屬性,如果標(biāo)注沒有設(shè)定,那么Html標(biāo)注就會(huì)被視為字符串,并被送到字符串流等待送到客戶端,客戶端的瀏覽器會(huì)對(duì)其進(jìn)行解釋;如果Html標(biāo)注有設(shè)定runat="server" 屬性,Page 對(duì)象會(huì)將該控件放入控制器,服務(wù)器端的代碼就能對(duì)其進(jìn)行控制,等到控制執(zhí)行完畢后再將Html服務(wù)器控件的執(zhí)行結(jié)果轉(zhuǎn)換成Html標(biāo)注,然后當(dāng)成字符串流發(fā)送到客戶端進(jìn)行解釋<input id="Button" type="button" value="button" runat="server" />
3、web服務(wù)器控件:也稱asp.net服務(wù)器控件,是Web Form編程的基本元素,也是asp.net所特有的。它會(huì)按照client的情況產(chǎn)生一個(gè)或者多個(gè)html控件,而不是直接描述html元素。如: <asp:Button ID="Button2" runat="server" Text="Button"/>那么它和html服務(wù)器控件有什么區(qū)別呢?參照其他網(wǎng)頁(yè)的資料看法如下:
1)、Asp.net服務(wù)器控件提供更加統(tǒng)一的編程接口,如每個(gè)Asp.net服務(wù)器控件都有Text屬性。
2)、隱藏客戶端的不同,這樣程序員可以把更多的精力放在業(yè)務(wù)上,而不用去考慮客戶端的瀏覽器是ie還是firefox,或者是移動(dòng)設(shè)備。
3)、Asp.net服務(wù)器控件可以保存狀態(tài)到ViewState里,這樣頁(yè)面在從客戶端回傳到服務(wù)器端或者從服務(wù)器端下載到客戶端的過程中都可以保存。
4)、事件處理模型不同,Html標(biāo)注和Html服務(wù)器控件的事件處理都是在客戶端的頁(yè)面上,而Asp.net服務(wù)器控件則是在服務(wù)器上,舉例來說:
<input id="Button4" type="button" value="button" runat="server"/>是Html服務(wù)器控件,此時(shí)我們點(diǎn)擊此按鈕,頁(yè)面不會(huì)回傳到服務(wù)器端,原因是我們沒有為其定義鼠標(biāo)點(diǎn)擊事件。
<input id="Button4" type="button" value="button" runat="server" onserverclick="test" />我們?yōu)镠tml服務(wù)器控件添加了一個(gè)onserverclick事件,點(diǎn)擊此按鈕頁(yè)面會(huì)發(fā)回服務(wù)器端,并執(zhí)行test(object sender, EventArgs e)方法。
<asp:Button ID="Button2" runat="server" Text="Button" />是Asp.net服務(wù)器控件,并且我們沒有為其定義click,但是我們點(diǎn)擊時(shí),頁(yè)面也會(huì)發(fā)回到服務(wù)器端。
由此可見:Html標(biāo)注和Html服務(wù)器控件的事件是由頁(yè)面來觸發(fā)的,而Asp.net服務(wù)器控件則是由頁(yè)面把Form發(fā)回到服務(wù)器端,由服務(wù)器來處理。

Asp.Net 不同區(qū)別的 OnClick ( onserverclick, onclientclick )


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 新邵县| 海原县| 绥阳县| 遂昌县| 将乐县| 台南县| 分宜县| 桐梓县| 新乡县| 沙坪坝区| 乃东县| 华亭县| 屯门区| 浪卡子县| 井冈山市| 沙洋县| 涞水县| 拉萨市| 德惠市| 临洮县| 虞城县| 海兴县| 汤阴县| 汉沽区| 南漳县| 万荣县| 上高县| 葫芦岛市| 福海县| 瑞安市| 莱阳市| 烟台市| 吉水县| 阳春市| 石棉县| 壤塘县| 岳西县| 武宣县| 浦县| 盐城市| 青阳县|