熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

結合JavaScript與ASP.NET Web窗體進行程序開發

2013-11-13 10:03:37  來源: .NET編程 

  ASPNET為Web程序開發提供了新的范例其中包括一系列基於服務器的控件這些控件類似於HTML窗體中諸如文本框按鈕等元素使用這些控件的問題是必須調用服務器JavaScript為很多任務提供多種選擇的機會而這些過程不需要調用服務器讓我們來看結合JavaScript與ASPNET所帶來的強大功能
  
  性能是必需的
  調用服務器要求帶寬和服務器處理時間然而對一個可以享受高速流通的局域網程序將不會有任何問題但是在廣域網中就是不同的情況一個因特網用戶連接速度的不同主要取決於用戶的撥號調制解調器帶寬或者電纜調制解調器使用用戶型的JavaScript可以不需要調用服務器
  
  傳統方法
  一個標准的網頁窗體包括像標題框正文和窗體在內的頁面JavaScript函數按傳統方法被放置在網頁窗體的標題框這些函數允許被頁面的其它部分載入和利用一旦被載入這些函數將從HTML元素中調用
  
  讓我們看看一個簡單的JavaScript的例子
  
  function valSubmit() {
  var doc = documentforms[];
  varmsg = ;
  if (docfirstNamevalue == ) {
  
  msg += Please enter a first namen;
  }
  
  if (doclastNamevalue == ) {
  msg += Please enter a last namen;
  }
  
  if (msg == ) {
  docsubmit();
  } else {
  alert(The following errors were
  encounterednn + msg);
  } }
  
  這一函數將檢驗數據被傳送到窗體中的兩個HIML區如果其中一個區是空的將顯示錯誤信息並且停止運行如果兩個區都有值時窗體被提交你可以使用以下的代碼調用這一函數
  
  <input type=button value=submit
  name=btnSubmit onClick=valSubmit();>
  
  利用這一關系在HIML區沒有數據之前窗體是不會被提交的這樣我們可以看到代碼變得更加簡單但是由於無需調用額外的服務器而不會產生任何副作用JavaScript簡短而實用這就意味著窗體不需要額外的載入時間
  
  ASPNET網頁窗體允許使用標准的HTML因此你可以容易地使用前面的范例ASPNET用戶控件允許你很輕松地調用服務器代碼來處理Web窗體慶幸的是用戶控件和JavaScript的結合使用完全是可以的我將利用一個ASPNET按鈕控件的例子來說明這一使用過程
  
  按鈕控件的所有屬性提供了將JavaScript連接到控件的方式首先將JavaScript函數放置在ASPNET網頁窗體中但是通過添加返回值可以改變放置的方法如果確認通過函數值返回為真與按鈕相關的服務器函數就會別調用如果返回值為假則窗體不會被提交
  
  <%@ Page language=c# %>
  <!DOCTYPE HTML PUBLIC //WC//DTD HTML Transitional//EN >
  <html><head>
  <title>WebForm</title>
  <script language=javascript>
  function valSubmit() {
  var doc = documentforms[];
  varmsg = ;
  if (docfirstNamevalue == ) {
  msg += Please enter a first namen;
  }
  if (doclastNamevalue == ) {
  msg += Please enter a last namen;
  }
  if (msg == ) {
  docsubmit();
  return true;
  } else {
  alert(The following errors were encounterednn + msg);
  return false;
  } }
  </script>
  <script language=C# runat=server>
  private void btnSearch_Click(object sender SystemEventArgs e) {
  ResponseWrite(Search);
  }
  private void Page_Load(object sender SystemEventArgs e) {
  btnSubmitAttributesAdd(onClick return valSubmit(););
  }
  </script></head>
  <body>
  <form id=frmBuilderTest method=post runat=server>
  <label >
  First Name:</label>
  <input
  type=text name=firstName id=firstName>
  <label >
  Last Name:</label>
  <input
  type=text name=lastName id=lastName><br /><br />
  <asp:Button id=btnSubmit runat=server Text=Submit Width=px
  OnClick=btnSearch_Click></asp:Button>
  </form></body></html>
  
  這些代碼中最為關鍵的一行是
  
  btnSubmitAttributesAdd(onClick return valSubmit(););
  
  通過風格屬性使用CSS可以將元素放置在HIML窗體窗體將JavaScript函數和ASPNET 按鈕 (btnSubmit)以及HTML的onClick事件連接起來在窗體被提交給服務器時ASPNET Button 中的onClick屬性會通知系統調用哪些函數
  
  如果你是一名VBNET開發人員對於前面代碼只需要改變代碼中的C#模塊VBNET相應的代碼如下
  
  <script language=vb runat=server>
  Private btnSearch_Click (sender As Object e As SystemEventArgs)
  ResponseWrite(Search)
  End Sub
  Private Page_Load(sender As Object e As SystemEventArgs)
  btnSubmitAttributesAdd(onClick return valSubmit();)
  End Sub
  </script>
  
  功能強大的JavaScript和ASPNET結合
  JavaScript是面向用戶網頁開發的實用標准語言它與ASPNET Web窗體的結合為開發人員提供了一個功能強大的用於構建穩固程序的工具集而程序的穩固性被認為軟件性能的一個關鍵組成部分
From:http://tw.wingwit.com/Article/program/net/201311/12434.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.