十天學會ASP.net之第四天

來源:互聯網
上載者:User
  首先我要說明,我這十天教程也只是一個讓大家對ASP.NET有一個認識而已,我也跳過了很多東西。網上有很多人在責罵我寫的教程,認為十天什麼都學不會,看了我的教程還是什麼都不會,我想他們或許是過高估計了我的教程。外面有很多書,關於ASP和ASP.NET的,我就是看外面的書學會的。我所要做的就是希望大家能看了我的教程以後覺得ASP和ASP.NET不是學不會的東西然後有信心去學會它。我想學習還是靠自己的,外面每一本書也有自己寫的不周到的地方,關鍵還需要自己的實踐加上探索。 

  首先來說一下表單的驗證控制項,以前我們做表單驗證,如果是用戶端的JAVASCRIPT,不能做到美觀統一,而且還可以通過直接在瀏覽器起教表單來屏蔽;如果我們做伺服器端驗證,又會發現讓檢驗結果在前台反映也是很麻煩的事情。現在好了,ASP.NET提供的很多檢驗控制項讓我們不需要考慮是用戶端檢驗還是伺服器端檢驗,讓我們不需要考慮是怎麼輸出檢驗結果。  

  看一下檢驗表單控制項是不是填寫了的檢驗控制項先:

  <asp:textbox id="username" runat="server" cssclass="textbox"/>
  <asp:requiredfieldvalidator controltovalidate="username" display="dynamic" forecolor="#ff0000" font-name="宋體" font-size="9pt" text="請填寫" runat="server"/>

  controltovalidate就是你想檢驗的控制項的ID;預設情況下不顯示錯誤訊息,地方也會被保留,如果使用了display="dynamic" 那麼不顯示錯誤訊息的地方不會被空出; forecolor="#ff0000" font-name="宋體" font-size="9pt" 就是設定錯誤訊息字型的顏色,字型,大小的;text="請填寫" 就是當沒有填寫內容時候顯示的錯誤訊息;別忘記最後的runat="server"。現在這個檢驗控制項是放在了textbox的後面,那麼錯誤訊息也在textbox後面顯示,也可以放在其他地方。  

  再看一下比較表單控制項的資料與另外一個資料的檢驗控制項:

  <asp:textbox id="password1" runat="server" textmode="password" cssclass="textbox"/>

  <asp:requiredfieldvalidator controltovalidate="password1" display="dynamic" forecolor="#ff0000" font-name="宋體" font-size="9pt" text="請填寫" runat="server"/>

  這裡是第一個需要使用者填寫的密碼框

  我們經常會再設立一個密碼框讓使用者再填寫一次:

  <asp:textbox id="password2" runat="server" textmode="password" cssclass="textbox"/>

  <asp:requiredfieldvalidator controltovalidate="password2" display="dynamic" forecolor="#ff0000" font-name="宋體" font-size="9pt" text="請填寫" runat="server"/>

  <asp:comparevalidator controltovalidate="password2" controltocompare="password1" display="dynamic" operator="equal" forecolor="#ff0000" font-name="宋體" font-size="9pt" text="確認失敗" runat="server"/>

  controltocompare="password1" 就是需要比較的控制項;operator="equal" 就是設定比較操作是:是否相等(還有NotEqual:不相等,LessThan:少於,GreaterThan:大於,當不符合這個比較操作的時候顯示錯誤訊息)。  

  以前說到BUTTON控制項CausesValidation=true/false來設定按鈕提交的表單是不是被檢驗也就是這裡的幾個檢驗控制項,如果CausesValidation=true的話按下按鈕就會首先檢測是不是都通過了檢驗控制項的檢驗。  

  下面再說兩點:

  一、每一個可以顯示的控制項都有是不是顯示的屬性,比如username.Visible=false;就是隱藏了前面的username控制項;還有就是如果要對控制項應用CSS的話就這麼寫:cssclass="",而不是以前HTML中的class=""。

  二、所有WEB控制項都要包含在<form runat="server"></form>中,否則就會出錯。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.