以下為引用的內容: <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 就是一個函數,對于它更具體的參數,你就好好看下了。
一時來勁,可能大家都看到網上有種狂惡心的對話框組,原理是什么呢?請看:
以下為引用的內容: <script language="vbscript"> msgbox"你知道你會點確定的。。。。。。。" msgbox"不點也要點。。。。。。。。" msgbox"沒辦法是吧。。。。。。。。。。?" msgbox"要不網頁打不開啊。。。。。。" msgbox"這招損人吧。。。。。。。。。" msgbox"真想揍揍站長。。。。。。。。。" </script> |
其實站長用這些玩弄別人的時候,先玩弄了自己:因為這都是他想出來的?。海?/p>
呵呵,我沒有損大家的意思,只是為了學習。
在來個開頁和退頁彈出對話框的原理吧
以下為引用的內容: <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!”
以上只是一個顯示對話框msgbox,當然還有書寫對話框inputbox也順便看下吧。
以下為引用的內容: <script language="vbscript"> </script> |
有關inputbox的想關參數也去看看吧。
再來看看幾個實用的函數:
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> |
根據這幾個,經??吹降拈L文章后面加“......”的情況就是如下:
以下為引用的內容: <script language=vbs> |
還有個比較重要的函數replace()
在字符串中查找,替代指定的字符串
replace(strtobesearched,strsearchfor,strreplacewith)
strtobesearched是字符串; strsearchfor是被查找的子字符串;strreplacewith 是用來替代的子字符串。
下面的一個就是很有用的文字轉換程序
以下為引用的內容: <script language=vbs> text="你好,歡迎" text=replace(text,"你好","nihao") text=replace(text,"迎","Ying") alert (text) </script> |
經常在發送EMAIL時,添加多個地址,中間采用“;”號進行分隔,那具體怎么分解接受過來的多個EMAIL地址呢?采用Split函數:Split 函數從字符串中返回數組。
以下為引用的內容: <script language=vbs> cnbruce="CuoXIn@163.com;CuoXIn@CuoXIn.com;tslxg@hotmail.com" MyArray = Split(CuoXIn, ";") a=MyArray(0) b=MyArray(1) c=MyArray(2) alert(a) alert(b) alert(c) </script> |
這些都是比較現實較好玩的些,玩中學習也不錯:)但畢竟我們是要編程的,說到編寫程序,我知道程序結構可以分:
1,順序結構:就是最普通的,從上往下,從左往右執行的程序
2,選擇結構:給你兩個條件,要不這樣(if ... then),要不那樣(else),任君選擇:)
3,循環結構:給你一個最大發揮的空間,在不超出這個范圍內進行活動(循環),否則自動退出(跳出循環)。
再復雜的程序也無非是由這三種結構綜合嵌套運用過來的,你說是吧。
順序結構沒多少要說,因為程序執行基本都是這方向。
來看看選擇結構,當然選擇結構也可以嵌套。
以下為引用的內容: <body> hello, <script language="vbscript"> <!-- dim thishour thishour=hour(time) if thishour<=12 then document.bgcolor="red" document.fgcolor="black" document.write("上午好!") else if thishour<=18 then document.bgcolor="blue" document.fgcolor="white" document.write("下午好!") else document.bgcolor="green" document.fgcolor="yellow" document.write("晚上好!") end if end if --> </script> 本頁的作用是根據不同時間顯示不同顏色和歡迎信息。 </body> |
以上程序很簡單吧,只要能認識英文就會懂程序(我是這么理解的:)
先把現在的小時提交出來:hour(time);
然后和12比較判斷,如果<=12,肯定是上午了,否則就是下午和晚上;
否則里面繼續條件判斷,如果時間再<=18的話,那肯定就是下午了;
最后,不用說,瞎子猜猜也知道是晚上了:)
有關上一程序中的document.bgcolor就是文檔的背景色,document.fgcolor就是文檔的前景色(文字色),下一程序是動態改變背景顏色的。
以下為引用的內容: <script language="vbscript"> <!-- sub setbgcolor(bcolor) document.bgcolor=bcolor end sub --> </script> <form> <input type="radio" name="color" onclick=setbgcolor("red")>red<br> <input type="radio" name="color" onclick=setbgcolor("green")>green<br> <input type="radio" name="color" onclick=setbgcolor("blue")>blue<br> <input type="radio" name="color" onclick=setbgcolor("yellow")>yellow<br> <input type="radio" name="color" onclick=setbgcolor("gray")>gray<br> </form> |
有關條件選擇結構的嵌套再show出一個表單檢測的程序
以下為引用的內容: <html><head><title>abc</title> <script language="vbscript"> <!-- sub btnsubmit_onclick if form1.name.value<>"" then if form1.addr.value<>"" then if form1.email.value<>"" then if instr(form1.email.value,"@")<>0 and instr(form1.email.value,".")<>0 then form1.submit else alert"email error!" end if else alert "enter your email!" form1.elements("email").focus end if else alert "enter your address!" form1.elements("addr").focus end if else msgbox "enter your name please!" form1.elements("name").focus end if end sub --> </script> </head> <body> <form name="form1" method=post action="bug.html"> your name:<input type="text" name="name"><br> your addr:<input type="text" name="addr"><br> your email:<input type="text" name="email"><br> <input type="button" name="btnsubmit" value="submit"> </form> </body> </html> |
程序是給出來了,但看起來比較難懂,有時程序執行時間也比較重要,所以得精簡程序代碼。
正所謂:寫程序容易,寫經典程序難啊,那上面的程序還可以換種思維方式。改用javascript(注:學的是編程思想,不要太過計較腳本類型)
以下為引用的內容: <html> <head> <title>abc</title> <script language="javascript"> <!-- function form1_onsubmit() { if (document.form1.name.value=="") { alert("請設定您的登陸名。") document.form1.name.focus() return false } else if(document.form1.addr.value=="") { alert("請填寫您的地址。") document.form1.addr.focus() return false } else if(document.form1.email.value=="") { alert("請填寫您的E-Mail地址。") document.form1.email.focus() return false } } --> </script> </head> <body> <form name="form1" onsubmit="return form1_onsubmit()"> your name:<input type="text" name="name"><br> your addr:<input type="text" name="addr"><br> your email:<input type="text" name="email"><br> <input type="submit" name="submit" value="submit"> </form> </body> </html> |
最后來看下循環結構吧:1到500可不是一個一個寫出來的。
以下為引用的內容: <script language=vbs> for i= 1 to 500 document.write(i&"<br>") next </script> |
當然循環不只可以用for,還可以用do while...loop等
反正程序這東西是代替我們少做了許多重復單一無聊的事——只要你合理利用程序。
應該有些成就吧,學語言,學編程就是學語法語義,學編程架構思想。
當然這要你有扎實的本語言的基礎,基礎是什么?你知道哪些函數嗎?你知道怎么用程序怎么判斷偶數嗎(包含了運算)?你知道如何進行表單檢測嗎?你知道哪三種程序架構嗎?
呵呵,把以上的程序吃透,最好再多看看腳本參考手冊,跟我就可以開始ASP的上路了。
補:
Function過程與Sub過程類似,但是Function過程可以返回值。
Function過程也可以使用由調用過程傳遞的常數、變量或表達式作為參數。如果Function過程無任何參數,則Function語句必須包含括號。
Function過程通過函數名返回一個值,這個值是在過程的語句中賦給函數名。Function返回值的數據類型總是Variant。
分享:Cookies 欺騙漏洞的防范(vbs js 實現)一、攻擊原理Cookies 欺騙主要利用當前網絡上一些用戶管理系統將用戶登錄信息儲存在 Cookies 中這一不安全的做法進行攻擊,其攻擊方法相對于 SQL 注入漏洞等漏洞來說相對要“困難&rdquo
新聞熱點
疑難解答