国产探花免费观看_亚洲丰满少妇自慰呻吟_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://m.survivalescaperooms.com/maplye/archive/2006/08/29/489338.html


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 门源| 弥渡县| 曲周县| 南陵县| 淄博市| 平凉市| 上林县| 安宁市| 津南区| 塔城市| 北安市| 象山县| 怀集县| 昆明市| 增城市| 忻城县| 浦县| 婺源县| 长葛市| 新巴尔虎右旗| 辛集市| 定边县| 桑植县| 汪清县| 三都| 诸城市| 奉节县| 望奎县| 滕州市| 孝感市| 买车| 辽宁省| 吉安市| 潢川县| 临汾市| 乌鲁木齐县| 广饶县| 桃江县| 理塘县| 榕江县| 池州市|