返回列表 發帖

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 呈現即可
按下鍵盤的部分可以參考 http://www.w3schools.com/jsref/jsref_onkeypress.asp
if/else 可以參考 http://www.w3schools.com/js/js_if_else.asp
To infinity and beyond!

TOP

<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>



不知哪裡出錯   請求幫忙...

TOP

那個 keypress 的例子你可能沒有仔細看喔,上面的範例是禁止 user 輸入數字的。所以你應該是要判斷 keychar,不用整段照著貼。另外輸入的部分,應該是要以整份文件來抓取鍵盤按鍵,所以把 keypress 事件放到 body 內比較好。

另外文章內若有程式碼,建議你應該要縮排並且用 code 語法包起來,這樣才會讓其他人看得懂。

以下的程式再給你參考看看,剩下的應該要靠你自己了。
<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>
    
To infinity and beyond!

TOP

返回列表 回復 發帖