2015-10-07 359 views
-1

我的Javascript代碼(在HTML文檔中)不返回任何輸出。沒有if/else,它的功能,但即使是一個簡單的if不起作用。Javascript if/else語句不返回輸出

目標:找出HTML輸入值的模數,並返回即使0和奇數(如果有的話)。

代碼(一個或多個):

HTML輸入+按鈕:

<input id="num" type="number" min="1" name="num"> 
     <button onclick="calculate(); evenodd(); return false;">Go</button> 

(該calculate()是另一個JS函數,它完美地工作)

HTML輸出:

<p id="evod"></p> 

Javascript:

<script type="text/javascript"> 

     function evenodd() { 


     var num2 = parseInt(document.getElementById("num").value); 


     if (num2 % 2) == 0) { 
      document.getElementById("evod").innerHTML = "Even"; 
      } 

     else { 
      document.getElementById("evod").innerHTML = "Odd"; 
      } 

     } 

    </script type="text/javascript"> 
    </script> 
+0

does even even()'even run?試試console.log也許吧?你已經有了另一個名爲calculate()的函數,如果不存在(根據你提供的代碼,它不會),我不認爲下一個函數會執行。 –

+1

保持瀏覽器開發者控制檯處於打開狀態。當您的JavaScript代碼不起作用時,首先要做的是檢查控制檯中的錯誤! – Pointy

+0

你已經用jquery標記了這個標籤,但是即使是最基本的jquery也沒有使用 - 請刪除標籤或確認它可以被刪除。 –

回答

5

你有一個語法錯誤:

if (num2 % 2) == 0) { 

你缺少左括號立即num2爲使前:

if ((num2 % 2) == 0) { 

而且,你有不良HTML。你的腳本應該被格式化爲:

<script type="text/javascript"> 
// JS code 
</script> 

你不應該在結束標記中擁有屬性。

要自己調試它,請嘗試在瀏覽器中打開開發者控制檯(在大多數情況下,按Ctrl + Shift + J或F12將會到達那裏)並查看報告的錯誤。