亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

JS問題,求解答

JS問題,求解答

張爾茲海默癥 2015-06-15 10:35:22
這是課程里的一道練習題,請問這么寫為什么實現不了,若是單獨判斷就可以彈窗,跟計算寫到一起,就不彈窗<!DOCTYPE html><html>?<head>? <title> 事件</title> ?? <script type="text/javascript">? ?function count(){? ? ? ?? ? //獲取第一個輸入框的值? ? var num1 = document.getElementById("txt1").value; //獲取第二個輸入框的值? ? var num2 = document.getElementById("txt2").value; //獲取選擇框的值? ? var rule = document.getElementById("select").value;? ? //獲取通過下拉框來選擇的值來改變加減乘除的運算法則? ? if(num1 != null && num2 != null){? ? ? ? switch(rule){? ? ? ? ? ? case "+": var result = parseInt(num1) + parseInt(num2); ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? break;? ? ? ? ? ? case "-": var result = num1 - num2;? ? ? ? ? ? break;? ? ? ? ? ? case "*": var result = num1 * num2;? ? ? ? ? ? break;? ? ? ? ? ? case "/": var result = num1 / num2;? ? ? ? ? ? break;? ? ? ? }? ??//設置結果輸入框的值?????????document.getElementById("fruit").value = result;? ? }else if(num1==""){? ? ? ?alert("請輸入正確的數字!");? ? ? ?document.getElementById("txt1").focus();? ? ? ?return false;? ? }else if(num2==null){? ? ? ?alert("請輸入正確的數字!");? ? ? ?document.getElementById("txt2").focus();? ? ? ?return false;? ?}} ?</script>??</head>??<body>? ?<input type='text' id='txt1' />?? ?<select id='select'> <option value='+'>+</option> <option value="-">-</option> <option value="*">*</option> <option value="/">/</option>? ?</select>? ?<input type='text' id='txt2' />?? ?<input type='button' value=' = ' onclick="count()"/> <!--通過 = 按鈕來調用創建的函數,得到結果-->?? ?<input type='text' id='fruit' /> ???</body></html>
查看完整描述

3 回答

?
cwtxz

TA貢獻5條經驗 獲得超0個贊

將判斷語句改成下面這樣:

if(num1 && num2){

? ? ? ? switch(rule){

? ? ? ? ? ? case "+": var result = parseInt(num1) + parseInt(num2); ? ? ? ? ? ? ? ? ? ?

? ? ? ? ? ? break;

? ? ? ? ? ? case "-": var result = num1 - num2;

? ? ? ? ? ? break;

? ? ? ? ? ? case "*": var result = num1 * num2;

? ? ? ? ? ? break;

? ? ? ? ? ? case "/": var result = num1 / num2;

? ? ? ? ? ? break;

? ? ? ? }? ??

????????//設置結果輸入框的值?

????????document.getElementById("fruit").value = result;

? ? }else if(!num1){

? ? ? ?alert("請輸入正確的數字!");

? ? ? ?document.getElementById("txt1").focus();

? ? ? ?return false;

? ? }else if(!num2){

? ? ? ?alert("請輸入正確的數字!");

? ? ? ?document.getElementById("txt2").focus();

? ? ? ?return false;

? ?}

} ?


查看完整回答
反對 回復 2015-06-17
  • 張爾茲海默癥
    張爾茲海默癥
    嗯,謝謝,你的是可以實現的,那你能告訴我為啥我那么寫不可以嗎? 你的if(num1 && num2){},當num1=0,num2=0的時候為什么會判斷通過,進入if內部?(0 && 0)不是假的嗎?
?
syl_12

TA貢獻1條經驗 獲得超0個贊

num1 在不輸入任何值的情況下為“”,始終走了第一個if判斷里面,可以debugger調試看下就知道了

查看完整回答
反對 回復 2015-06-15
?
John001

TA貢獻7條經驗 獲得超1個贊

函數 count 寫少了一個括號 }?

查看完整回答
反對 回復 2015-06-15
  • 3 回答
  • 0 關注
  • 1608 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號