麻辣家族討論版版's Archiver

小誌 發表於 2010-5-10 18:11

(ASP教學第7篇) 多路徑選擇的Select Case敘述

[color=DarkOrange][size=5][b]多路徑選擇的Select Case敘述[/b][/size][/color]
使用過了If-Then-Else敘述,我們得知If-Then-Else敘述在條件成立後會執行Then之後的敘述,若條件不成立則會執行Else之後的敘述,只能二選一;如果程式有很多狀況,需要建立多條選擇路徑,則我們可以使用Else If逐條過濾條件敘述,但是使用Else If逐條過濾條件敘述來撰寫程式,不但眼睛都看花了,而且程式又拖的很長,此時我們就可以利用具有多路徑選擇的Select Case敘述來撰寫程式。
Select Case敘述可以根據變數中的資料數值來決定程式的執行流程,其變數的型態可以是字元型態、整數型態…等,利用Select Case敘述來撰寫程式不但執行速度快,而且程式也淺顯易懂多了,其格式如下:
Select Case判斷敘述區塊格式[code]Select Case  評估值  
     Case條件值1:
         敘述區塊1;
     Case條件值2:
         敘述區塊2;
.
.
     Case條件值n:
         敘述區塊n;
Case Else
         敘述區塊n+1;
End Select[/code]上列的格式意義是:當評估值符合條件值1時就執行程式區塊1,評估值符合條件值2時就執行程式區塊2…,評估值符合條件值n時就執行程式區塊n,如果任何條件都不符合則執行程式區塊n+1。

[color=Magenta][size=4][b]實做學習[/b][/size][/color]
一直使用單行文字方塊的表單元件真是無趣,現在我們換單選式按鈕元件來玩玩吧!設計一表單程式網頁,由瀏覽者選擇它喜歡的網頁背景顏色,當顏色選定並按下「確定」按鈕後就將網頁底色變成瀏覽者所選定的顏色:
[attach]217[/attach][code]<%
color=request("color")
select case color
     case "y"   '選黃色
            color="yellow"
     case "g"   '選綠色
            color="green"
     case "b"   '選藍色
            color="blue"
end select
%>
<html>
<head>
<title>ex405</title>
</head>
<body bgcolor="<%=color%>">
請選擇您喜歡的網頁背景顏色<p>
<form>
    <input type="radio" checked name="color" value="y">黃色
    <input type="radio" name="color" value="g">綠色
    <input type="radio" name="color" value="b">藍色
    <input type="submit" value="確定">
</form>
</body>
</html>[/code][color=Red][b]提示:[/b][/color]
上例中,您有沒有發現少了什麼?沒錯!就是Case Else!這樣撰寫並沒有問題,只要判別所有的條件值都不符合後,就不會執行任何敘述,而直接跳至End Select的下一個敘述。


[color=Magenta][size=4][b]實做學習[/b][/size][/color]
Select Case敘述中的條件值,並不限制於單一的常數,還可以是逐一列出條件值得方式,例如:讓瀏覽者輸入月份,按下確定按鈕後,告訴他該月份是哪一個季節:
[attach]218[/attach][code]<%
moon=request("moon")
select case moon
     case 2,3,4   '逐一列出條件值
            msg="春季"
     case 5,6,7   
            msg="夏季"
     case 8,9,10   
            msg="秋季"
     case 1,11,12   
            msg="冬季"
end select
%>

<html>
<head>
<title>ex406</title>
</head>
<body bgcolor="#ffffff">
<form>
<table border="1">
<tr>
<td>請輸入現在月份</td>
<td><input type="text" size="15" name="moon"></td>
</tr>
<tr>   
<td colspan=2><input type=submit value="確定"></td>
</tr>
</tr>
<tr>   
<td colspan=2>現在是<font color="red"><%= msg %></font></td>
</tr>
</table>
</form>
</body>   
</html>[/code]

頁: [1]

麻辣家族討論版版為 麻辣學園 網站成員  由 昱得資訊工作室 © Since 1993 所提供