亚洲综合原千岁中文字幕_国产精品99久久久久久久vr_无码人妻aⅴ一区二区三区浪潮_成人h动漫精品一区二区三

主頁 > 知識庫 > ASP腳本的執行順序詳細說明

ASP腳本的執行順序詳細說明

熱門標簽:創意電話機器人 武穴地圖標注 梧州市地圖標注 世界地圖標注了哪些城市 濟源電銷外呼系統線路 地圖標注陽江 外呼線路批發 java外呼系統是什么 石家莊慧營銷外呼系統
首先我們先來了解一下ASP頁面執行的流程
1.IIS找到ASP文件,提交給ASP引擎(一般是ASP.DLL)處理。
2.引擎打開這個ASP文件,找出%和%>之間的內容,當然還有script runAt="server">和對應的/script>之間的內容,這些內容稱為腳本塊。只有腳本塊里的內容被引擎解析,其他內容不管,作為沒有意義的字符插在腳本塊之間。有必要說明一下的是,其實被解析的內容還不止這些,!--#include ***-->類的服務器端包含文件也是由引擎包含進來并加以處理的。如果你讀的程序比較多,你還會知道有的runAt屬性標注為"Server"的object>對象也是會被處理的,這里不做深入討論。
3.引擎執行腳本塊中的腳本,這些服務器端的腳本是作為一個整體被執行的,也就是說,可以寫出如下的代碼:
復制代碼 代碼如下:

%
Dim i
For i=1 to 5
%> Hello World!
% Next %>

引擎并不會將這些腳本塊分開解析,而使兩個腳本塊都發生語法錯誤。所以我們得到如下結論:并非所有非服務器腳本的代碼都會被發送到客戶端,有可能這段非服務器腳本的代碼被腳本塊限制了。服務器是一定不會操心客戶端腳本的執行問題的,但是可以通過服務器端的腳本輸出不同的客戶端腳本。

4.最終引擎產生了一個文本流,或者說是腳本的執行結果,可以認為這是一個字符串,就是發送到客戶端瀏覽器的網頁的代碼。客戶端瀏覽器將頁面顯示出來,此時頁面的源代碼(源文件)是不包含服務器端的腳本的,但包含了服務器端腳本的執行結果(這是顯然的)。
% … %> 與 script runat="server">…/script>
它們都是服務器端的腳本,同時被處理執行。他們執行時是作為一個整體的。
% … %> 與 script language="…">…/script>
前者是服務器端腳本,后者是客戶端腳本。前者先執行,后者后執行。
其實也不盡然,二者的腳本是有可能在同時被執行的,但空間不同,仍然是:前者在服務器上執行,后者在客戶端瀏覽器里執行。前者在邏輯上一定提前于后者執行。同時我們也得到結論:在同一個頁面的執行中,客戶端腳本無論如何不能反饋給服務器端腳本,也就是說,客戶端瀏覽你的留言本并且提交新留言或者是任何客戶端腳本獲取的值都不可能在同一次服務器響應中被處理。
關于組件的調用
注意服務器端腳本和客戶端腳本都是腳本,自然都可以創建xmlhttp組件、ADODB.Connection組件等,但是并不是放在哪里都可以的。
xmlhttp如果用于服務器的抓取網頁(比如采集)就要在服務器腳本里創建了,而如果是用于客戶端的ajax無刷新而后臺訪問服務器端的頁面,那么就是運行于客戶端的了,自然在客戶端創建。

ADODB.Connection組件用于訪問數據庫,一般來說在服務器端創建,畢竟是服務器端的asp程序在跑數據庫的數據,但如果你的數據庫真的是在客戶端連接的,那么就毫無疑問在客戶端腳本里創建了。

總之,矛盾著的事物及其每一個側面各有其特點。不同事物有不同的矛盾;同一事物在發展的不同過程和不同階段上有不同的矛盾;同一事物中的不同矛盾、同一矛盾的兩個不同方面各有其特殊性(看不懂的可以略去不看……)。這一原理要求我們堅持具體問題具體分析原則,在矛盾普遍性原理的指導下,具體分析矛盾的特殊性,并找出解決矛盾的正確方法。反對千篇一律地采用一種方法解決不同事物的矛盾。“一把鑰匙開一把鎖,到什么山唱什么歌”講的就是這個道理。
服務器端VBScript腳本創建對象使用Server.CreateObject(className)方法,客戶端VBScript腳本創建對象使用CreateObject(className)方法。
典型錯誤
復制代碼 代碼如下:

%
Function TSize(b)
'這是我自定義的函數
TSize="中國"
end function
%>
a href="javascript:%TSize('變量')%>" >點這里要使用我定義的函數/a>

錯誤分析:
混淆了服務器端腳本和客戶端腳本的區別。實際執行時我們會發現,客戶端根本沒有收到什么TSize之類的代碼,因為TSize是服務器端的程序,被引擎處理之后(注意引擎對于函數的處理,純粹是給服務器端腳本調用的,不會發回到客戶端)就消失了,不可能在客戶端起作用。這就是說,客戶端腳本無法直接調用服務器端腳本的函數。

事實上,這個程序是有語法錯誤的,引擎處理這段內容的時候先找到了%和%>之間的內容,也就是%TSize('變量')%>,顯然這段內容不符合VBScript的語法規則。嗯,改成%=TSize("變量")%>在服務器端腳本就沒有語法錯誤了,這時TSize函數可以正常返回值"中國",于是客戶端收到的href屬性是這樣寫的:"javascript:中國",是無法執行的。
服務器端腳本對客戶端腳本的影響
前面已經說過了,服務器端腳本在邏輯上是提前于客戶端腳本的執行的,因此這樣的代碼是可行的:
復制代碼 代碼如下:

%
Dim i
For i=1 to 5
Response.Write "script type=""text/javascript"">" _
"alert('Hello World!" i "')/script>"
Next
%>

關于Response.Redirect與javascript的執行問題
注意以下代碼的寫法是錯誤的:
復制代碼 代碼如下:

%
Response.Redirect "index.asp"
Response.Write "script type=""text/javascript"">" _
"alert('密碼錯誤!')/script>"
%>

這是一種常見的錯誤,編寫者常常以為,這樣寫代碼可以使客戶端先彈出“密碼錯誤”的提示然后轉向到index.asp,事實上這不可能發生,即使將兩行代碼順序交換,也不可能達到這種效果。
究其原因,和服務器對于兩行代碼的處理方式有關。這兩行代碼不可能同時起作用。

Response.Write是向客戶端發送一段文本,這段文本的內容可以是一段腳本,那么客戶端瀏覽器收到后可以執行這段腳本,注意,要收到之后才能執行。

而Response.Redirect是向客戶端發送了一個HTTP頭信息(什么是HTTP頭信息?這么說吧,比如對客戶端Cookies的寫入是HTTP頭信息,HTTP頭信息在HTTP的主體之前發回客戶端瀏覽器,這就是為什么有時我們把服務器的緩沖關閉之后修改Cookies會出錯的原因,因為主體已經開始傳送,不允許發送HTTP頭信息了。),信息的內容告訴客戶端瀏覽器應該跳轉頁面瀏覽,注意,這個Redirect信息是立刻起作用的,也就是說這個Redirect信息具有排他性,在緩沖打開的情況下,無論已經使用Response.Write向緩沖里寫入了多少內容,一旦調用Response.Redirect,將會清空緩沖,并且向客戶端瀏覽器發送這個頭指令。如果動態跟蹤一下程序的執行,我們還會發現,在調用了Response.Redirect之后,程序停止執行了,所以注意服務器端程序在調用Response.Redirect之前要做好數據連接的關閉等操作。

那么上面的例子應該怎樣修改呢?如果你不愿意修改那個index.asp以加入腳本提示的話,那么只能將轉向指令放到客戶端腳本中執行,就像這樣:
復制代碼 代碼如下:

%
Response.Write "script type=""text/javascript"">" _
"alert('!');location.href='index.asp'/script>"
%>
您可能感興趣的文章:
  • 在不刷新頁面的情況下調用遠程asp腳本
  • ASP網頁模板的應用: 讓程序和界面分離,讓ASP腳本更清晰,更換界面更容易
  • 用asp腳本實現限制IP訪問
  • 隱藏修改文件時間和文件屬性的ASP腳本
  • ASP基礎入門第三篇(ASP腳本基礎)
  • ASP基礎入門第五篇(ASP腳本循環語句)

標簽:淮北 滁州 迪慶 唐山 來賓 揭陽 南寧 甘南

巨人網絡通訊聲明:本文標題《ASP腳本的執行順序詳細說明》,本文關鍵詞  ASP,腳本,的,執行,順序,詳細,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《ASP腳本的執行順序詳細說明》相關的同類信息!
  • 本頁收集關于ASP腳本的執行順序詳細說明的相關信息資訊供網民參考!
  • 推薦文章
    日韩av成人| 亚洲第一色在线| 成人免费福利片在线观看| 成人免费高清视频| 精品视频在线观看免费| 日本伦理黄色大片在线观看网站| 韩国三级香港三级日本三级la| 成人免费观看网欧美片| 成人a大片高清在线观看| 999久久狠狠免费精品| 日韩中文字幕一区| 麻豆系列 在线视频| 久久久久久久网| 一级女人毛片人一女人| 麻豆网站在线看| 成人影院一区二区三区| 91麻豆tv| 99热热久久| 欧美一级视| 可以在线看黄的网站| 亚洲精品影院久久久久久| 亚洲天堂免费观看| 九九干| 欧美a级片视频| 麻豆系列 在线视频| 91麻豆国产福利精品| 欧美a级片视频| 国产视频久久久| 免费国产在线视频| 美女免费毛片| 午夜欧美福利| 国产91精品一区二区| 成人免费观看的视频黄页| 国产一级生活片| 香蕉视频久久| 成人a级高清视频在线观看| 九九久久99| 日韩av成人| 日韩专区在线播放| 欧美激情一区二区三区在线| 99色视频在线观看| 欧美大片一区| 国产不卡在线播放| 精品国产三级a| 国产欧美精品| 精品国产一区二区三区免费| 日韩中文字幕在线亚洲一区| 精品视频在线观看一区二区| 黄色免费三级| 99色吧| 欧美一区二区三区性| 一级毛片视频免费| 成人免费一级毛片在线播放视频| 日韩女人做爰大片| 国产国产人免费视频成69堂| 久久国产一久久高清| 久久99这里只有精品国产| 免费一级片网站| 精品国产亚一区二区三区| 欧美1区| 成人免费一级纶理片| 欧美另类videosbestsex视频| 日韩专区一区| 免费国产在线视频| 黄色免费三级| 尤物视频网站在线观看| 日本乱中文字幕系列| 中文字幕一区二区三区精彩视频 | 国产伦精品一区三区视频| 黄视频网站在线看| 高清一级片| 天天色色网| 国产网站免费在线观看| 一级女性全黄生活片免费| 色综合久久天天综线观看| 久久成人亚洲| 91麻豆精品国产自产在线| 国产一级强片在线观看| 天天做人人爱夜夜爽2020| 一级女性全黄生活片免费| 欧美一级视频免费| 久久精品成人一区二区三区| 色综合久久手机在线| 91麻豆tv| 午夜激情视频在线观看| 97视频免费在线观看| 国产不卡在线看| 日韩在线观看视频网站| 成人影院久久久久久影院| 欧美另类videosbestsex| 91麻豆精品国产自产在线| 久久99爰这里有精品国产| 成人免费观看网欧美片| 久久国产影院| 韩国三级视频网站| 一级毛片视频免费| 九九精品久久久久久久久| 色综合久久手机在线| 国产麻豆精品| 免费毛片播放| 国产网站免费| 日韩一级精品视频在线观看| 成人免费观看男女羞羞视频| 91麻豆爱豆果冻天美星空| 精品视频在线看 | 成人免费一级毛片在线播放视频| 尤物视频网站在线观看| 国产麻豆精品高清在线播放| 久久国产一久久高清| 久久久久久久久综合影视网| a级毛片免费全部播放| 日韩中文字幕在线观看视频| 精品国产亚一区二区三区| 国产麻豆精品视频| 亚洲天堂一区二区三区四区| 中文字幕97| 国产91素人搭讪系列天堂| 天天做日日爱夜夜爽| 国产视频在线免费观看| 午夜久久网| 国产网站免费视频| 欧美激情一区二区三区视频| 国产伦精品一区二区三区无广告| 亚洲天堂一区二区三区四区| 999久久狠狠免费精品| 日韩专区在线播放| 亚洲爆爽| 国产麻豆精品| 国产不卡精品一区二区三区| 可以在线看黄的网站| 美女免费毛片| 91麻豆精品国产高清在线| 天天色色色| 色综合久久天天综合绕观看| 可以免费看毛片的网站| 欧美1卡一卡二卡三新区| 青青久久精品国产免费看| 日韩中文字幕一区| 一本伊大人香蕉高清在线观看| 国产高清在线精品一区二区| 一级女性大黄生活片免费| 日韩av片免费播放| 欧美大片毛片aaa免费看| 国产极品精频在线观看| 国产视频网站在线观看| 九九久久国产精品| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 成人免费网站久久久| 成人免费观看视频| 国产极品白嫩美女在线观看看| 欧美一级视频免费观看| 国产视频久久久| 韩国三级视频网站| 成人a级高清视频在线观看| 日韩免费片| 日韩免费片| 九九久久国产精品| 日韩一级黄色| 国产91丝袜在线播放0| 欧美一区二区三区性| 天天做日日爱夜夜爽| 999精品在线| 日韩在线观看免费完整版视频| 国产韩国精品一区二区三区| 国产视频在线免费观看| 人人干人人草| 99久久精品国产免费| 国产成人精品在线| 久久成人亚洲| 精品在线观看一区| 亚洲女人国产香蕉久久精品 | 国产综合成人观看在线| 亚洲女人国产香蕉久久精品| 国产综合91天堂亚洲国产| 成人高清护士在线播放| 日韩av东京社区男人的天堂| 黄视频网站免费观看| 日韩一级黄色| 欧美激情一区二区三区视频 | 91麻豆国产| 国产成人精品综合| 国产高清视频免费| 99久久精品国产高清一区二区| 国产伦久视频免费观看视频| 国产精品自拍在线观看| 国产91丝袜在线播放0| 日本特黄特色aa大片免费| 国产伦理精品| 99热精品在线| 国产一区二区精品久久| 99热热久久| 日本在线不卡视频| 国产麻豆精品| 999久久66久6只有精品| 国产一区二区精品在线观看| 四虎久久精品国产| 日本在线www| 深夜做爰性大片中文| 欧美激情影院| 99色视频在线|