2016-02-11 72 views
-1

我寫這個只是爲了學習切換方法,但由於某種原因,它不能按我的意圖工作,我的功能不起作用。 我所要做的就是在值中寫入一個數字,然後在切換方法中檢查該值,並且如果值大於零,則顯示消息,小於零的消息等等。切換功能不起作用

這裏是整個事情

<!DOCTYPE html> 
<html> 
    <body> 
    <p>Check if your number in relation to 0</p> 

    <input id="in"></input> 
    <br> 
    <button onclick="check()">Check</button> 

    <p id="display"></p> 

    <script> 

    function check() { 

     var text; 
     var val = document.getElementById("in").value; 

     switch (true) { 
     case (val < 0); 
      text = "Numarul este mai mic decat zero"; 
      break; 
     case (val > 0); 
      text = "Numarul este mai mare decat zero"; 
      break; 
     default: 
      text = "Numarul este egal cu zero"; 
      break; 
     } 

     document.getElementById("display").innerHTML = text; 
    } 
    </script> 

    </body> 
</html> 

該語言的文本只是說數量小於大於或等於零,沒關係,我忘了給它的英文翻譯。

+0

瞭解如何使用控制檯(F12),並且您實際上可以看到錯誤是什麼。 – adeneo

+1

只是說,「切換(真)」並不是最佳做法。對於這個用例,你應該繼續使用if-else。 – Bergi

+1

不要濫用那樣的開關。使用if/else,如果我沒記錯,這個表現太糟糕了。 – epascarello

回答

1

case (val > 0);應該是case (val > 0):。你用冒號結束一個case語句,而不是分號。

1

請案後改變;:

case val > 0: 
//  ^

(你不需要case:之間括號)

+0

哦,我的天啊,是這麼簡單,我試圖弄清楚15分鐘。多謝你們 ! –