国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

Asp.Net的控件如何與Server交互

2019-11-18 17:02:10
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

以前寫asp的程序的時(shí)候,知道只有type設(shè)置為submit的按鈕,才能觸發(fā)表單提交數(shù)據(jù)給服務(wù)器端。
如:asp.net中的Button就是等于<input type="submit">.
但是現(xiàn)在Asp.Net的好多控件都可以任意的和服務(wù)器端交互,如:LinkButton.
這是怎么實(shí)現(xiàn)的呢?
難道是一種全新的方式嗎?
其實(shí),這只是微軟的一種變通的方式。
我們先來(lái)看看客戶端的代碼是如何的.
我這里是一個(gè)帶有LinkButton的頁(yè)面,
其實(shí)LinkButton在客戶端就等于html里的A.
我們來(lái)看看LinkButton為什么也能和服務(wù)器端交互?
當(dāng)我們點(diǎn)擊右鍵查看該頁(yè)面的源代碼時(shí),看到:

<script type="text/javascript">
<!--
var theForm = document.forms['ctl00'];
if (!theForm) {
    theForm = document.ctl00;
}
function __doPostBack(eventTarget, eventArgument) {
    if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
        theForm.__EVENTTARGET.value = eventTarget;
        theForm.__EVENTARGUMENT.value = eventArgument;
        theForm.submit();
    }
}
// -->
</script>

<a id="simpleLinkButton1" href="Javascript:__doPostBack('simpleLinkButton1','')">Click Me</a>
<input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" />
<input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" />
從上面的代碼中就可以看出simpleLinkButton1是一個(gè)鏈接,通過(guò)客戶端代碼來(lái)提交所在的表單。
而其中兩個(gè)隱藏域,則用來(lái)交換數(shù)據(jù)的,就是把__doPostBack的兩個(gè)參數(shù)值賦給這兩個(gè)隱藏域。
這就是為什么LinkButton也具有提交數(shù)據(jù)的最直觀的原因。

那么這上面的代碼是怎么生成的呢?
我們看LinkButton的源代碼就可以清楚地知道:
PRotected internal override void OnPreRender(EventArgs e)
{
      base.OnPreRender(e);
      if ((this.Page != null) && this.Enabled)
      {
            this.Page.RegisterPostBackScript();
            if ((this.CausesValidation && (this.Page.GetValidators(this.ValidationGroup).Count > 0)) || !string.IsNullOrEmpty(this.PostBackUrl))
            {
                  this.Page.RegisterWebFormsScript();
            }
      }
}

以上只是把自己在學(xué)習(xí)工作過(guò)程中的一些體會(huì)記錄如此,防止自己忘記了。
也望和大家多多交流!

http://www.survivalescaperooms.com/maplye/archive/2006/08/29/489338.html


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 南丹县| 禄丰县| 岐山县| 巨鹿县| 资中县| 沅陵县| 甘南县| 大冶市| 图木舒克市| 金寨县| 孝感市| 客服| 普陀区| 临安市| 和顺县| 石柱| 清水县| 都江堰市| 竹山县| 沙河市| 辉县市| 聂荣县| 抚宁县| 广饶县| 定结县| 北安市| 荆门市| 依安县| 新源县| 响水县| 靖安县| 连云港市| 游戏| 隆林| 溆浦县| 闻喜县| 砀山县| 三江| 格尔木市| 湘西| 双辽市|