JavaScript 的流程控制 題目問題 請求幫忙
請使用 if/else 條件敘述建立多選一的 JavaScript 程式碼,以便判斷消費者使用的付款方式。請從 "鍵盤" 輸入付款方式,然後修改 Ch3-2-3.htm 的 switch 條件敘述,改為使用 if/else 條件敘述的程式碼,以便判斷消費者使用的付款方式。
JavaScript 程式: Ch3-2-3.htm
在 JavaScript 程式使用多條件的 switch 指令,顯示消費者選擇的付款方式。
<html>
<head>
<title>switch 條件敘述</title>
</head>
<body>
<center><h2>測試switch多條件敘述</h2></center>
<hr>
<script language="JavaScript">
// 變數宣告
var strPayment = "master";
// 條件敘述
switch(strPayment){
case "cash":
document.write("使用現金付款!<br>");
break;
case "visa":
document.write("使用VISA信用卡付款!<br>");
break;
case "master":
document.write("使用Master信用卡付款!<br>");
break;
default:
document.write("未明的付款方式!<br>");
}
</script>
</body>
</html> 你可能需要先有個畫面,顯示 User 可以輸入的項目,
然後 JavaScript 需要接收 User 按下鍵盤的事件,
最後你再用 if/else 去判斷。
畫面的部分用 html 呈現即可
按下鍵盤的部分可以參考 [url]http://www.w3schools.com/jsref/jsref_onkeypress.asp[/url]
if/else 可以參考 [url]http://www.w3schools.com/js/js_if_else.asp[/url] <html>
<body>
<script type="text/javascript">
function noNumbers(e)
{
var keynum
var keychar
var numcheckif(window.event) // IE
{
keynum = e.keyCode
}
else if(e.which) // Netscape/Firefox/Opera
{
keynum = e.which
}
keychar = String.fromCharCode(keynum)
numcheck = /\d/
return !numcheck.test(keychar)
}
</script><form>
<input type="text" onkeypress="return noNumbers(event)" />
</form></html>
<html>
<head>
<title>switch 條件敘述</title>
</head>
<body>
<center><h2>輸入1使用現金付款</h2></center>
<hr>
<center><h2>輸入2使用VISA信用卡付款!</h2></center>
<hr>
<center><h2>輸入3使用Master信用卡付款!</h2></center>
<hr>
<script language="JavaScript">
// 變數宣告
var strPayment = "master";
if (master == 1)
{
document.write("使用現金付款!<br>")
}
else
{
document.write("未明的付款方式!<br>")
if (master == 2)
{
document.write("使用VISA信用卡付款!<br>")
}
else
{
document.write("未明的付款方式!<br>")
if (master == 3)
{
document.write("使用Master信用卡付款!<br>")
}
else
{
document.write("未明的付款方式!<br>")
}
</script>
</body>
</html>
不知哪裡出錯 請求幫忙... 那個 keypress 的例子你可能沒有仔細看喔,上面的範例是禁止 user 輸入數字的。所以你應該是要判斷 keychar,不用整段照著貼。另外輸入的部分,應該是要以整份文件來抓取鍵盤按鍵,所以把 keypress 事件放到 body 內比較好。
另外文章內若有程式碼,建議你應該要縮排並且用 code 語法包起來,這樣才會讓其他人看得懂。
以下的程式再給你參考看看,剩下的應該要靠你自己了。
[code js]<body onkeypress="doSomething(event)">
</body>
<script>
function doSomething(e) {
var keynum;
var keychar;
var numcheck;
if(window.event) {
keynum = e.keyCode;
}
else if(e.which) {
keynum = e.which;
}
keychar = String.fromCharCode(keynum);
alert(keychar);
}
</script>
[/code]
頁:
[1]