国产高清在线免费观看-国产高清在线免费无码-国产高清在线男人的天堂-国产高清在线视频-国产高清在线视频精品视频-国产高清在线视频伊甸园

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

[點(diǎn)晴永久免費(fèi)OA]ASP動(dòng)態(tài)網(wǎng)頁(yè)制作技術(shù)經(jīng)驗(yàn)分享

admin
2022年6月21日 15:5 本文熱度 1742

學(xué)好一門編程語言有兩個(gè)條件是必不可少的,一是理論與實(shí)踐結(jié)合。在實(shí)際例程去驗(yàn)證書本上的理論能加深你對(duì)理論的理解;二是學(xué)會(huì)總結(jié),把學(xué)習(xí)、運(yùn)用中的心得體會(huì)記下來,當(dāng)成一種經(jīng)驗(yàn)或者教訓(xùn)加以提煉并在日后的應(yīng)用中加以改進(jìn),一定能提高你對(duì)這門編程語言的認(rèn)識(shí)。以下是筆者在學(xué)習(xí)與運(yùn)用ASP編程中的兩點(diǎn)經(jīng)驗(yàn),希望能對(duì)大家有所幫助。

ASP頁(yè)面內(nèi)VBscript和Jscript的交互

ASP具備管理不同語言腳本程序的能力,能夠自動(dòng)調(diào)用合適的腳本引擎以解釋腳本代碼和執(zhí)行內(nèi)置函數(shù)。ASP開發(fā)環(huán)境提供了兩種腳本引擎,即VBscript(缺省)和Jscript。不過,開發(fā)者并沒有被限制于只能使用這兩種語言,只要能夠提供合適的ActiveX腳本引擎就能使用任何腳本語言。

腳本語言的選擇往往基于許多不同原因:它可能是開發(fā)者最為熟悉的語言,可能是對(duì)給定工程來說能夠提供最多特色支持的,也有可能是最具效率的。不同的環(huán)境和要求使得我們?cè)谶x擇腳本語言時(shí)注重不同的因素,同時(shí)也使得我們?cè)谀承r(shí)候面臨選定的腳本語言不能直接提供其它語言固有的函數(shù)這一問題,或某個(gè)腳本已經(jīng)寫成但用的卻是另外一種腳本語言。

此時(shí)應(yīng)該怎么辦?是否需要用當(dāng)前所用的腳本語言重寫這些腳本?或者說,是否有可能在一種腳本語言中調(diào)用其它腳本語言的內(nèi)置函數(shù)?本文要說明的就是在ASP應(yīng)用中如何讓VBscript腳本和Jscript腳本交互以最大限度地獲得兩種腳本語言的特色支持。

一、VBscript和Jscript的內(nèi)置函數(shù)

在VBscript和Jscript中,有大量的內(nèi)置函數(shù)功能是相同或類似的。然而,在一種腳本語言中內(nèi)置的函數(shù)并非總是在另外一種腳本語言中也有對(duì)應(yīng)的函數(shù)。例如,VBscript提供了許多用于操作字符串和格式化數(shù)據(jù)的函數(shù),這些函數(shù)在Jscript中并不存在。這些函數(shù)包括StrReverse()、Filter()以及FormatCurrency()等。在另一方面,Jscript所提供的用于管理數(shù)組、字符串編碼等的函數(shù)在VBscript中也沒有定義,如join()、reverse()、pow()、位操作、escape()和unescape()等。

那么,如果在Jscript程序中需要一個(gè)VBscript函數(shù)該怎么辦呢?

二、異種腳本的互相調(diào)用

如果需要在Jscript腳本中調(diào)用一個(gè)VBscript中內(nèi)置的函數(shù),則應(yīng)該寫一個(gè)VBscript用戶定義函數(shù)(在這里調(diào)用VBscript內(nèi)置函數(shù)),然后在Jscript腳本中象調(diào)用公用Jscript函數(shù)一樣調(diào)用這個(gè)用戶定義函數(shù)。

例如,如果要調(diào)用的VBscript內(nèi)置函數(shù)是FormatCurrency(),則可以聲明如下自定義函數(shù):

以下為引用的內(nèi)容:

< script LANGUAGE="VBscript" RUNAT="SERVER">
Function FormatValue(Value)
FormatValue = FormatCurrency(Value)
End Function
< /script>

接下來在Jscript代碼中就可以象普通Jscript函數(shù)一樣調(diào)用FormatValue()了。用類似的方法也可以實(shí)現(xiàn)VBscript代碼調(diào)用Jscript函數(shù)。

應(yīng)用同樣的規(guī)則,我們可以在任何腳本內(nèi)調(diào)用任何用戶定義函數(shù)。不過,從Jscript腳本內(nèi)調(diào)用一個(gè)不帶參數(shù)的VBscript過程(Sub)時(shí)應(yīng)略加注意,此時(shí)在Jscript中應(yīng)該象調(diào)用一個(gè)不帶參數(shù)的Jscript函數(shù)一樣調(diào)用它,如用foo()調(diào)用VBscript Sub foo過程。

三、數(shù)據(jù)共享

在某些情形下混合運(yùn)用VBscript和Jscript函數(shù)是非常有用的,但在不同語言腳本之間共享數(shù)據(jù)也可能很有用。實(shí)現(xiàn)這種共享的方法很簡(jiǎn)單:不管使用的是什么語言,只要是在頁(yè)面級(jí)聲明的變量就可以任意引用。

對(duì)象的使用方法也相似,可以任意選用合適的語言讀取、修改屬性或調(diào)用對(duì)象的方法。當(dāng)然給定對(duì)象的屬性和方法是由創(chuàng)建該對(duì)象實(shí)例的語言所定義的。正如上例VBscript的過程調(diào)用,當(dāng)從Jscript中調(diào)用一個(gè)不帶參數(shù)的VBscript對(duì)象的方法時(shí),其調(diào)用方法也遵從Jscript的調(diào)用規(guī)則,反之亦然。

四、數(shù)組管理

數(shù)組共享問題稍微復(fù)雜一點(diǎn)。雖然數(shù)組也象其它變量一樣可以在不同語言腳本之間共享,但必須注意兼容方面的問題。

VBscript數(shù)組在Jscript下可以用VBscript的符號(hào)引用,即用myArray(2)引用數(shù)組元素而不是Jscript的數(shù)組元素引用符號(hào)myArray[2]。此外,還可以使用一個(gè)特殊的Jscript對(duì)象——VBArray對(duì)象將VBscript數(shù)組轉(zhuǎn)換為Jscript數(shù)組。下面的代碼從VBscript數(shù)組myVBArray創(chuàng)建Jscript數(shù)組myJSArray:

以下為引用的內(nèi)容:

var Temp = new VBArray(myVBArray)
var myJSArray
myJSArray = Temp.toArray()

上述代碼首先創(chuàng)建一個(gè)臨時(shí)的VBArray對(duì)象,然后使用它的toArray()方法將自己轉(zhuǎn)換為Jscript數(shù)組。此后就可以象普通Jscript數(shù)組一樣使用myJSArray,如myJSArray[1]。但應(yīng)當(dāng)注意的是,toArray()方法將把一個(gè)多維的VBArray轉(zhuǎn)換為一維的Jscript數(shù)組。

從VBscript中引用Jscript數(shù)組更為復(fù)雜。雖然在VBscript中我們可以直接訪問Jscript數(shù)組相關(guān)的方法和屬性,但沒有直接訪問Jscript數(shù)組的單個(gè)元素的方法。也就是說,我們可以在VBscript腳本中讀取Jscript數(shù)組的長(zhǎng)度屬性,如下所示:

x = myJSArray.length
但無法直接讀取該數(shù)組的單個(gè)元素,下面的VBscript代碼是不正確的:

x = myJSArray(3)
解決該問題的一個(gè)可行的方法是執(zhí)行一個(gè)轉(zhuǎn)換過程,如下面的代碼所示,此處假定VBscript是缺省的腳本語言:

以下為引用的內(nèi)容:

< %
Dim Temp
Dim myVBArray
Temp = myJSArray.join(", ")
myVBArray = Split(Temp, ", ")
%> 

此處的Jscript join()方法將數(shù)組myJSArray元素轉(zhuǎn)換到一個(gè)以逗號(hào)為分割符的字符串,VBscript Split()函數(shù)將字符串轉(zhuǎn)換為VBscript數(shù)組。注意這里我們是在VBscript環(huán)境下調(diào)用Jscript的join方法。依照此例,我們可以通過自定義VBscript函數(shù)來模擬Jscript的VBArray對(duì)象的toArray()方法以實(shí)現(xiàn)Jscript數(shù)組到VBscript數(shù)組的轉(zhuǎn)換。

用模板建立動(dòng)態(tài)ASP頁(yè)

對(duì)于模板,我想大家可能都有一些概念,在word中很多模板,設(shè)計(jì)好了大概的版面,你只要用你自己的話填充那些占位字符就好了。這兒的模板大概也就是這個(gè)意思,頁(yè)面中相對(duì)穩(wěn)定的部分固定下來,其他的部分根不同的情況在輸入不同的內(nèi)容。其實(shí)在DreamWeaver中也有模板的功能,不過那個(gè)靜態(tài)的,只能手動(dòng)填充內(nèi)容,而這兒講的是動(dòng)態(tài)的自動(dòng)的內(nèi)容填充。

首先,我先來解釋一下為什么要用到模板文件。有時(shí)候,模板能夠帶給你對(duì)網(wǎng)頁(yè)功能和布局更為完整的概念。當(dāng)你看到Word的模板格式之后,就知道最后版面是個(gè)什么樣子的了,在這兒也是如此。例如,你可以保留ASP語句,而使用不同的模板來建立不同的頁(yè)面風(fēng)格。

這樣,你就不用為每種不同風(fēng)格的網(wǎng)頁(yè)分別來寫不同的ASP頁(yè)面了,這顯然可以為我們節(jié)省很多時(shí)間和精力。而且,模板文件能夠讓你更容易的瀏覽頁(yè)面代碼,不用擔(dān)心ASP和HTML的混雜搞的你頭昏腦脹。你可以只用把注意力集中在HTML上,而完全不用去管ASP了。再有就是,摸板很簡(jiǎn)單,你絕對(duì)很快就能搞懂搞定。在這篇文章中,將會(huì)用到一個(gè)數(shù)據(jù)庫(kù)——一個(gè)用的很廣泛的雇員表。包括雇員ID,姓名,照片,以及工作摘要和照片的注腳。下面是這個(gè)Access數(shù)據(jù)庫(kù)的結(jié)構(gòu):



一個(gè)很簡(jiǎn)單的數(shù)據(jù)庫(kù),是吧。當(dāng)然你可以按要求來擴(kuò)展它,那就是你自己的事了。我假設(shè)你已了解數(shù)據(jù)庫(kù)的基本操作,這樣我不用在這上面花太多的筆墨,其實(shí)這兒的代碼都是很簡(jiǎn)單的,只要你知道一些基本的東西,就能把它看懂。建立了數(shù)據(jù)庫(kù)之后,我們可以開始建立模板文件了。這個(gè)文件是每個(gè)頁(yè)面的骨架。我沒有用到表格,那樣有些麻煩,而我很懶,而且,也不用加入,標(biāo)簽,因?yàn)槟鞘且釉贏SP頁(yè)面中的。所以到最后,它的樣子就是這樣了:



就是這樣了!這就是一個(gè)簡(jiǎn)單的模板。把它存為template.tmp,在后面的ASP頁(yè)面中將要引用到它。要注意的是:我們可以在模板中加入各種HTML標(biāo)簽,你完全可以在摸版中定義好網(wǎng)頁(yè)的結(jié)構(gòu)和樣式,就像實(shí)際寫一個(gè)網(wǎng)頁(yè)一樣,只是要把關(guān)鍵的地方標(biāo)出來——注意到了那些%圍著的東西了嗎?那就是模板的精髓了。或許你已經(jīng)注意到,那些%圍著的是和數(shù)據(jù)庫(kù)中的字段意義對(duì)應(yīng)的。看看下面的ASP代碼,是如何讀入模板和數(shù)據(jù)庫(kù)文件,把他們?nèi)嗪驮谝黄穑缓筝敵鑫覀兿胍腍TML頁(yè)面。

這就是所有的代碼了,很簡(jiǎn)單,不是嗎?它所作的只是打開模板文件,按順序讀入每一行,然后用沖數(shù)據(jù)庫(kù)中讀入的實(shí)際的字段值來代替模版中那些%img%,%name%標(biāo)記。而且,它還把在“Duties”字段內(nèi)大段文本中的回車解釋成HTML的回車 ,這樣就不至于打亂整個(gè)的排版格式了。怎么樣?輕松搞定吧。模板在某些應(yīng)用上真的是可以發(fā)揮奇效,省時(shí)省力。

理論上,你還可以修改這段代碼,用FileSystemObject來讀寫文本,這樣數(shù)據(jù)就不一定要存儲(chǔ)在數(shù)據(jù)庫(kù)中了。在一些應(yīng)用中,比如即時(shí)的新聞發(fā)布,這樣也許更為方便一些。

以上就是ASP動(dòng)態(tài)網(wǎng)頁(yè)制作技術(shù)的詳細(xì)介紹,希望對(duì)大家的學(xué)習(xí)有所幫助。


該文章在 2022/6/21 15:06:39 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 91精品久久久久久综合五月天 | 天天色天天干天天综合网 | 亚洲综合校园欧美制服 | 亚洲av无码一区二区乱子伦as伊人精品视频直播 | 国产免费人成在线视频 | 麻豆国产人妻欲求不满谁演的 | 国色天香精品一卡2卡3卡4 | 久久久久久无码精品亚洲日韩 | 中文字幕日本αv一区二区 中文字幕日本aⅴ天堂在线 | 最近中文无码视频 | 国产最爽的视频国语对白 | 亚洲一区二区无码偷拍 | 国产网友愉拍精品 | 国产精品午夜爆乳美女视频 | 国产免费高清视频在线观看不卡 | 亚洲中文无码一区二区三区 | 中国凸偷窥xxxx自由视频 | 国产成人无码av在线观看乳水 | 强奷乱码中文字幕 | 亚洲一区二区三区国产 | 91久久精品无码 | 国产精品自拍国产精 | 亚洲色大成网站www不卡大全 | 欧美成人高清性色生活 | 中文字幕制服诱惑丝袜 | 野花影院手机免费观看 | 精品国产麻豆免费网站 | 国产成人一区二区不卡 | 很黄很肉的共妻文 | 国产欧美日韩综合一区在线观看 | 久久男人av资源网站无码 | 丰满少妇高潮惨叫久久久一 | 日本一本二本无码免费视频 | 国产AV一区二区三区人妻 | 色综合色天天久久婷婷基地 | 国产性生大片免费观看性 | 亚洲第一成年免费网站 | 国产精品自在拍一区二区不卡 | JIZZ老师护士| 国产精品线路一线路二 | 国产日韩欧美色片 |