ASP編程入門進階(三):接觸指令碼程式

來源:互聯網
上載者:User
編程|程式|指令碼|指令碼 有了前面的html中關於form的強化知識,是不是在想,下面就可以開始ASP之旅呢?未必。
一般系統學過ASP的編程人員都會切身體會到:在系統學習ASP的內建對象和內建群組件之前,學會指令碼語言永遠是至關重要的。
為什麼這麼說呢?為什麼要學指令碼語言呢?ASP和指令碼語言又有什麼關係呢?

首先說說ASP是貴為何物吧。ASP是Microsoft Active Server Pages的簡稱,它是一種伺服器端指令碼環境,可用來建立互動式 Web 頁並建立強大的 Web 應用程式。可以表明ASP是一種基於伺服器端的指令碼環境,那就明白ASP為什麼需要IIS支援了,因為IIS即為常用的一類web伺服器;那也就明白為什麼要學指令碼語言了,因為ASP提供的是一種指令碼環境。

再次需要說明的是,ASP只是一種環境,而非一種語言。如果真要形象化地說是ASP是網路程式設計語言的話,那也是屬於一個html+指令碼+asp提供的內建對象及組件的功能強大的混合語言。

所以,學點指令碼非常重要!其實無論是學指令碼語言,還是其它語言,我認為首先需要瞭解的是該語言涵蓋的各類特性,包括:資料類型、事件、方法、 對象、屬性、文法等當然這都是些空談,正如在大學課堂上的某電腦語言課一樣,搞純研究性的就是覺得有些索而無味。還是實用些的好,能解決問題的程式才是好程式(印證能逮到老鼠的貓就是好貓的經典聖語,呵呵)

當然,語言這東西還是要你去好好鑽研的,比如你寫求絕對值的程式,其實一個abs()函數就搞定了。再比如你會vb指令碼,但把同樣程式替換成java指令碼就會出錯,它們的資料類型不同,語句文法也不一樣啊。正如說中文和外文一樣,要會發音標(資料類型),會如何發音(方法),如何說成一句話(文法)……呵呵,有點讓你難受吧。行!直接了當。你以後需要注意的是語言的函數、文法。當然也不是讓你全看,按照教程中的遇到一個掌握一個。教程學完,差不多也結束了。呵呵,你要相信我。

目前有兩種主要的指令碼語言:VbScript和JavaScript。因為VbScript作為IIS預設的伺服器指令碼,所以我們所談所學的基本是圍繞VbScript為指令碼的ASP的,當然也不排除有的時候使用javascript.

舉一個很簡單的例子:

<script language="vbscript">
<!--
sub button1_onclick
msgbox (" 歡迎使用vbscript! " )
end sub
-->
</script>

<script language="javascript">
<!--
function b213()
{
alert("歡迎使用javascript!")

}
-->
</script>
<form>
<input type="button" name="button1" value="vbs"><br>
<input type="button" name="button2" value="js" onclick="b213()">
</form>
vbscript中的Sub 就是一個事件程序。過程名包含兩部分:一部分為按鈕名,即 Button1(從 < INPUT > 標記中的 NAME 屬性擷取);另一部分為事件名,即 OnClick。兩部分由底線 (_) 串連。單擊按鈕時,Internet Explorer 尋找並運行相應的事件程序,即 Button1_OnClick,而MsgBox 就是一個函數,對於它更具體的參數,你就好好看下了。
[Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]

一時來勁,可能大家都看到網上有種狂噁心的對話方塊組,原理是什麼呢?請看:

<script language="vbscript">
msgbox"你知道你會點確定的。。。。。。。"
msgbox"不點也要點。。。。。。。。"
msgbox"沒辦法是吧。。。。。。。。。。?"
msgbox"要不網頁打不開啊。。。。。。"
msgbox"這招損人吧。。。。。。。。。"
msgbox"真想揍揍站長。。。。。。。。。"
</script>
其實站長用這些玩弄別人的時候,先玩弄了自己:因為這都是他想出來的啊:)
呵呵,我沒有損大家的意思,只是為了學習。
[Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]

在來個開頁和退頁彈出對話方塊的原理吧
<script language="vbscript">
<!--
sub window_onload()
msgbox"welcome you!"
end sub
sub window_onunload()
msgbox"see you late!"
end sub
-->
</script>
開頁顯示“welcome you!”,關頁顯示“see you late!”
[Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]

以上只是一個顯示對話方塊msgbox,當然還有書寫對話方塊inputbox也順便看下吧。

<script language="vbscript">
<!--
dim strname
strname=inputbox("enter your name please:","enter your name","cnbruce")
document.write(strname&",welcome you!<p>")
-->
</script>
有關inputbox的想關參數也去看看吧。
[Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]

再來看看幾個實用的函數:
len():返回字串長度或者變數的位元組長度 
lef():截取一個字串的前部分內容
right():截取一個字串的後部分內容
<script language=vbs>
text="1234567890abcdefgh"
i=10

lentext=len(text)
lefttext=left(text,i)
righttext=right(text,i)

alert ("文本長度是:"&lentext)
alert ("文本左取"&i&" 得的是:"&lefttext)
alert ("文本右取"&i&" 得的是:"&righttext)
</script>
[Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]

根據這幾個,經常看到的長文章後面加“......”的情況就是如下:

<script language=vbs>
text="123 4567 8fds90 abcde fghxcfv"
i=10
if len(text)>i then '如果文本長度大於給定的值
text=left(text,i) '則提取前段的i位的字串
alert (text&"...")
else
alert (text)
end if
</script>
[Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]

還有個比較重要的函數replace()
在字串中尋找,替代指定的字串
replace(strtobesearched,strsearchfor,strreplacewith)
strtobesearched是字串; strsearchfor是被尋找的子字串;strreplacewith 是用來替代的子字串。
下面的一個就是很有用的文字轉換程式
<script language=vbs>
text="媽的,我操"

text=replace(text,"媽的","MD")
text=replace(text,"操","CAO")
alert (text)

</script>
[Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]

經常在發送EMAIL時,添加多個地址,中間採用“;”號進行分隔,那具體怎麼分解接受過來的多個EMAIL地址呢?採用Split函數:Split 函數從字串中返回數組。
<script language=vbs>
cnbruce="cnbruce@126.com;cnbruce@it365cn.com;root@cnbruce.com"



相關文章

Beyond APAC's No.1 Cloud

19.6% IaaS Market Share in Asia Pacific - Gartner IT Service report, 2018

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

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

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