久久―日本道色综合久久,亚洲欧美精品在线,狼狼色丁香久久婷婷综合五月,香蕉人人超,日本网站黄,国产在线观看不卡免费高清,无遮挡的毛片免费

2023信創(chuàng)獨角獸企業(yè)100強
全世界各行各業(yè)聯(lián)合起來,internet一定要實現(xiàn)!

在 asp 中結合Scripts腳本

2004-02-19 eNet&Ciweek

  在Vbscript和Jscript的章節(jié)中(相應第8和第9章),你會學到怎樣將Script腳本結合到Active Server Pages的具體實現(xiàn)。這部分主要是詳細解釋以及介紹一些可選擇的方法來進行Scripts和Active Server Pages的結合。

  最簡單的結合Scripts的方法是利用<%和%>,任何在這個符號中包容的都被認為是一個Scripts腳本。下面是個例子:

  <html>
 ?。糷ead><title>ASP Script 示例</title></head>
  <body>
  這是個
 ?。? for I=1 to 10 %>
  非常,
  <% next %>
  非常長的句子。
  </body>
 ?。?html>  

  該段Active Server Pages執(zhí)行后在瀏覽器上顯示為:

  這是個非常,非常,非常,非常,非常,非常,非常,非常,非常,非常,非常長的句子?! ?

  這段腳本利用VBscript的For...Next循環(huán)生成了11份‘非常’的拷貝?! ?

  Active Server Pages默認為您主要使用的是VBscript,也就是說,在使用<%和%>時不需要作任何事情來說明使用何種語言。不過,如果需要限定的話,您可以有三種方式?! ?

  首先,你可以在Internet Information Service管理器來進行限定使得所有Active Server Pages的默認語言為你所限定的。這樣做的步驟如下: 

  1.從開始菜單IIS(Internet Information Service)的程序組中執(zhí)行網絡服務管理器  

  2.右鍵你的網站名稱(如果你沒有改變默認設置,名稱將是Default Web Site)  

  3.選擇屬性項  

  4點擊主目錄表?! ?

  5點擊設置按鈕(要做這個,你必須有一個存在的Application。如果沒有的話,點Creat來創(chuàng)建一個。)

  6.在Application Configuration的對話框中,點App Option表?! ?

  7.在默認的ASP語言文本框中,輸入你所要的主要腳本語言,例如Vbscript或者Jscript?! ?

  當這些作完后,<%和%>中包容的程序就默認為你所指定的那種語言。  

  你還可以在特定的主頁中指定主要腳本語言,這樣做,你要將這種語言名稱直接放在你的Active Server Page文件最靠上的一行,如下:

 ?。?@ LANGUAGE=Jscript %>
 ?。糷tml>
  <head><title>ASP Script示例</title></head>
 ?。糱ody>
  這是個
 ?。? for(i=1;i<11;i++){ %>
  非常,
  <%}%>
  非常長的句子。
  </body>
 ?。?html>  

  這種直接放在首行的腳本,指示出這個文件中所有腳本都將利用JSCRIPT生成,當你利用這種方式指定腳本語言時,請注意在@和保留字LANGUAGE之間空出一個空格。另外,非常重要的是這句指示要在任何一句命令之前(否則就要報錯了)。

  你的第三種在Active Server Pages包含Scripts腳本的選擇是利用微軟的HTML<Script>拓展對象,例如下面: 

 ?。糷tml>
 ?。糷ead><title>ASP Script示例</title></head>
 ?。糱ody>
 ?。約cript language=“Jscript” runat=“server”>

  function sayhello()
  { response.write(“hello! 邁至科”)
  }
 ?。?script>
 ?。? sayhello() %>
  </body>
 ?。?html>  

  這里,<script>對象包含了一個Jscript函數。<script>的Language屬性限定了使用哪一種語言。RUNAT屬性是指示出該腳本應當在Server端還是在Client(瀏覽器上)端實現(xiàn)?! ?

  這個函數在第一行中被命名為sayhello()。在第二段腳本中,利用<%和%>標記的對象是真正調用該函數的位置。Active Server Pages會在顯示器上顯示出字符串  

  “hello! 邁至科” 

  注意  

  response.write()語句是將一段文本顯示在顯示器上。您會在后面的內容中了解更多?! ?

  如果你創(chuàng)建了一個客戶端的VBscript或者JScript腳本,你就應當對<SCRIPT>更加熟悉了。微軟的<Script>拓展可以被用來指定是在服務端還是在客戶段執(zhí)行。如果你忽略了RUNAT=server這個限定,你的script腳本將被認為是客戶端的。這種場合下,Server端將忽略這個script并由瀏覽器嘗試執(zhí)行〔然而會很悲慘的以失敗告終,因為這不是一個合法的客戶端script腳本〕?! ?

  為什么你會直接使用<Script>對象而不是<%和%>來限定scipt腳本語言?通常,你不會使用<script>對象。不過,這兩種限定一個Script腳本的方法還是有很明顯的區(qū)別的。  

  首先,使用<script>包含的直接腳本會立即執(zhí)行,無論在Active Server Pages的任何位置。例如下面這個例子?! ?

 ?。糷tml>
 ?。糷ead><title>ASP Script示例</title></head>
 ?。糱ody>
  This is the first sentence  
  <script LANGUAGE=“JScript” RUNAT=“server”>
  response.write(“This is the second sentence.”)
 ?。?script>
 ?。?body>
  </html>

  看這個例子后,您也許會認為,顯示器上會首先顯示This is the first sentence,然后是This is the second sentence,但是,這個Active Server Pages顯示在瀏覽器上是相反的順序。(或者什么都不顯示,那是因為生成了非法的HTML語法)

  為什么會這樣?因為主頁里面無論什么放在<script>里面都會首先執(zhí)行。如果你使用瀏覽器的View Source,你會看見你的主頁被Active Server Pages解釋為如下:  

  This is the second sentence.<html>
 ?。糷ead><title>ASP Script示例</title></head>
 ?。糱ody>
  This is the first sentence.
  </body>
 ?。?html>  

 ?。約cript>對象的行為有兩種含義。首先,你能夠在Active Server Pages的任何位置上的<script>對象中放置你的script腳本。其次,<script>對象,如果用于更多的目的來說,將會用包含函數和子程序的方法來進行限制。任何不包含函數或者子程序的腳本都將被立即執(zhí)行顯示為一個非法的HTML主頁。

  <script>對象使用<%和%>限制有一個明顯的優(yōu)點。使用<script>對象,你可以在一個單獨的主頁中混合使用多種script腳本??聪旅孢@個例子:

 ?。?@ LANGUAGE=“VBScript” %>
 ?。糷tml>

 ?。糷ead><title>ASP Script示例</title></head>
 ?。糱ody>
 ?。約cript LANGUAGE=“JScript” RUNAT=“server”>
  function sayhello()
  {
  response.write(“hello! 邁至科”)
  }
 ?。?script>

 ?。? for I=1 to 10
  sayhello()
  next
  %>
 ?。?body>
 ?。?html>  

  這個script腳本在一列中顯示了十次”hello! 邁至科”,但是請注意這是怎么實現(xiàn)的,這個包含在<%和%>中的腳本是用Visual Basic寫成的,不過,這個腳本調用的是JScript函數,這個JScript函數是在<Script>對象中定義的。當你希望在你的主腳本用一種語言而又需要調用另一種語言的函數,你可以使用這種方法。這樣可以彌補一些語言在常用函數和方法上的缺乏。

  作為總結,在一個Active Server Pages上指定腳本語言有三種方法?! ?

  ·利用Internet Information Server來指定作為你所有腳本中的默認語言?! ?

  ·在每一個單獨的Active Server Pages中的最上面一行利用<%@ LANGUAGE=“script語言”>來指定針對這個單獨Active Server Page所使用的腳本語言。

  · 利用Active Server Pages的<script>拓展來在一個Active Server Page中分別在相應位置指定多種腳本語言?! ?

  在這部分結束以前,將討論最終極的Active Server Pages指令,利用Active Server Pages輸出指令,你可以直接顯示表達式值。以下是個例子:  

  <html>
 ?。糷ead><title>ASP示例</title></head>
 ?。糱ody>
  At the Tone,the time will be: <%=time%>
  </body>
 ?。?html>  

  你可以使用<%和%>標志來輸出變量、方法(method,針對于對象的方法)以及函數的值,在上面的例子中,VBScript的時間函數值會輸出到顯示器上?! ?

  你可以用下面的方法完成同樣的事,見下面例子:

  <html>
 ?。糷ead><title>ASP示例</title></head>
 ?。糱ody>
  At the Tone,the time will be:<%response.write(TIME)%>
 ?。?body>
 ?。?html>  

  在這個例子中,VBScript的Time函數值將被Active Server Pages的Response對象輸出出來,response對象的write()方法是將表達式中的值顯示出來。(下一章中,你會學到更多有關對象和方法的知識)。  

  那么補充說明的是對于Active Server Pages內部<%=和%>也就是代表了Response.write()方法,因此無論你用哪一種方法其實是一樣的,沒有任何區(qū)別?! ?

  注意  

  當你使用<%=和%>來進行輸出時,如果此時顯示錯誤信息,將相應顯示為response.write()語句,你也許會因為你的程序中沒有這句話而困惑,其實這正說明二者實際上在Active Server Pages中是完全一致的?! ?

  雖然如此,在有些場合下某一種輸出方式顯然更方便一些,例如,當你需要在一個script腳本中輸出表達式值,通常response.write()更加容易處理,如果只是在HTML的某一位置輸出表達式值,那么<%=和%>則更容易使用。如下例:  

 ?。糎TML>
 ?。糷ead><title>ASP示例</title></head>
 ?。糱ody>
  <%
  For i=1 to 5
  myvar=myvar&“非常,”
  response.write(i&“:”&myvar&“<br>”)
  next

  %>
 ?。糷r> 
  這是一個<%=myvar%>長的句子。
 ?。?body>
 ?。?html>  

  在這個例子中,response.write()在script腳本的循環(huán)中顯示越來越長的子段。而<%=和%>指令則是直接在主頁的具體位置顯示出變量myvar的值。

相關頻道: eNews

您對本文或本站有任何意見,請在下方提交,謝謝!

投稿信箱:tougao@enet16.com