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

首頁 > 編程 > ASP > 正文

asp+中文教程(二)-- Asp+ Web Forms

2019-11-18 22:17:36
字體:
來源:轉載
供稿:網友
二、asp + Web Forms

    ASP + Web Forms ,一個微軟的新名詞,照它自己的話說,ASP + Web Forms頁面框架是一個可升級的NGWS runtime編程模型,可以在服務器上動態產生網頁。不太好懂是嗎,其實說白了,和HTML的表單一樣,但它可以在服務器端動態改變,而不象靜態HTML表單那樣一旦生成就無法改變,當然,用DHTML或remote script也可以做到動態改變,但畢竟不是很方便。那么,究竟Web Forms是個什么樣呢?其實你已經見過了,記得上次我給的那個例子嗎,沒錯,那就是一個Web Forms ,不過由于那個例子里全是靜態HTML,所以當你按下”lookup”按鈕時只不過是提交一次表單而已,什么都沒有發生,現在讓我們來看一個真正意義上的Web Forms ,它帶有一個廣告輪換控制,一個文本輸入框,一個選擇框、一個按鈕和一個文本標簽,代碼如下。

File : Intro6.aspx

<html>
   <head>
      <link rel="stylesheet"href="intro.CSS">
   </head>

   <script language="C#" runat=server>

       void SubmitBtn_Click(Object sender, EventArgs e) {
           Message.Text = "Hi " + Name.Text + ", you selected: " + Category.SelectedItem;
       }

   </script>

   <body>

       <center>

       <form action="intro6.aspx" method="post" runat="server">

           <asp:adrotator AdvertisementFile="ads.xml" BorderColor="black" BorderWidth=1 runat="server"/>

           <h3> Name: <asp:textbox id="Name" runat="server"/>

           Category:  <asp:dropdownlist id="Category" runat=server>
                         <asp:listitem>psychology</asp:listitem>
                         <asp:listitem>business</asp:listitem>
                         <asp:listitem>popular_comp</asp:listitem>
                      </asp:dropdownlist>

           <asp:button type=submit text="Lookup" OnClick="SubmitBtn_Click" runat="server"/>

           <p>

           <asp:label id="Message" runat="server"/>

       </form>

       </center>

   </body>
</html>

    好了,現在我們來具體看一下這個ASP+ 程序和ASP到底有什么不同,首先你可能注意到,原來asp的<% %>腳本定界符不見了,取而代之的是<script language=…>,說實話,原來我最痛恨的就是這個<% %>了,尤其是在HTML中混用的時候,簡直不象一種編程語言,你要從這樣一段程序里看出程序流程來,簡直比登天還難,現在好了。當然這不是說你現在不能用<% %>,畢竟它是向前兼容asp的嘛,不過我還是盡量少用為妙。看下面一段:
   <script language="C#" runat=server>

       void SubmitBtn_Click(Object sender, EventArgs e) {
           Message.Text = "Hi " + Name.Text + ", you selected: " + Category.SelectedItem;
       }

   </script>

    用過C的朋友是不是覺得很熟悉?沒錯,這是用C#寫的一個事件處理函數,void SubmitBtn_Click(Object sender , EventArgs e) ,你可能一看就明白了,void代表該函數沒有返回值,該函數帶有兩個參數, 代碼只有一行,你可能注意到這行代碼中的Message、Name、Category你并沒有定義,那么它們從哪里來的呢?看下面的代碼:
       <form action="intro6.aspx" method="post" runat="server">

           <asp:adrotator AdvertisementFile="ads.xml" BorderColor="black" BorderWidth=1 runat="server"/>

           <h3> Name: <asp:textbox id="Name" runat="server"/>

           Category:  <asp:dropdownlist id="Category" runat=server>
                         <asp:listitem>psychology</asp:listitem>
                         <asp:listitem>business</asp:listitem>
                         <asp:listitem>popular_comp</asp:listitem>
                      </asp:dropdownlist>

           <asp:button type=submit text="Lookup" OnClick="SubmitBtn_Click" runat="server"/>

           <p>

           <asp:label id="Message" runat="server"/>

       </form>

    這個表單的寫法和html表單完全不同了吧?首先,所有的表單項包括表單本身后面都加上了runat=server,這句話的意思就是說這個是服務器端控制項,另外象傳統表單的什么<input type=text>等的寫法都變了,你仔細觀察一下可以看出,原來的文本框變為<asp:textbox>,選擇框變為<asp:dropdownlist> , 選擇框選項變為<asp:listitem>,而submit按鈕變為<asp:button>,這個按鈕對應的控制函數就剛才我提到的那個SubmitBtn_Click函數,它是運行在服務器端的。另外還有一個服務器端控制<asp:label id=”Message” runat=”server”/>,這個asp:label是傳統表單所沒有的,它是一個服務器端文本控制,那么就存在一個問題,如果傳統的HTML里沒有這個元素,那么ASP+是怎么接收的呢?你運行一下這個程序,然后看一下HTML源碼,你會發現這么一行:
<INPUT type="hidden" name="__VIEWSTATE" value="a0z-1715863018__x">
對,ASP+就是通過這個隱藏表單的形式傳遞過去的。
在<form>標記下有這么一行代碼:
<asp:adrotator AdvertisementFile="ads.xml" BorderColor="black" BorderWidth=1 runat="server"/>
asp:adrotator,這也是一個服務器端控制,看名字你就知道了,廣告輪換嘛,不過相對ASP,它現在不是使用內置組件,而是作為一個服務器端控制,控制它顯示的就是這個ads.xml,代碼如下:

file ads.xml:
<Advertisements>

   <Ad>
      <ImageUrl>/quickstart/aspplus/images/banner1.gif</ImageUrl>
      <TargetUrl>http://www.microsoft.com</TargetUrl>
      <AlternateText>Alt Text</AlternateText>
      <KeyWord>Computers</Keyword>
      <ImPRessions>80</Impressions>
   </Ad>

   <Ad>
      <ImageUrl>/quickstart/aspplus/images/banner2.gif</ImageUrl>
      <TargetUrl>http://www.microsoft.com</TargetUrl>
      <AlternateText>Alt Text</AlternateText>
      <Keyword>Computers</Keyword>
      <Impressions>80</Impressions>
   </Ad>

   <Ad>
      <ImageUrl>/quickstart/aspplus/images/banner3.gif</ImageUrl>
      <TargetUrl>http://www.microsoft.com</TargetUrl>
      <AlternateText>Alt Text</AlternateText>
      <Keyword>Computers</Keyword>
      <Impressions>80</Impressions>
   </Ad>

</Advertisements>

    自己看一下吧,我就不詳細解釋了。

    好了,現在再運行一遍這個程序,好好體會一下它與asp的區別,準備下次的內容。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 伽师县| 永仁县| 东莞市| 荣昌县| 昭通市| 元阳县| 新邵县| 罗源县| 吴旗县| 建昌县| 宁明县| 贡觉县| 昌黎县| 陇南市| 台北市| 榆林市| 古蔺县| 新化县| 潍坊市| 顺平县| 永靖县| 山西省| 达日县| 福安市| 吉水县| 马龙县| 乌拉特后旗| 衡水市| 玉门市| 景谷| 温州市| 中牟县| 济宁市| 柳州市| 阳西县| 高要市| 手机| 东阳市| 黎川县| 郯城县| 开江县|