2015-10-13 89 views
-1

我想不pluginn我需要的時候我如果輸入的數據字符以外的任何其他除了數量顯示錯誤消息的按鈕,它檢查的黃金沒有 點擊創建與HTML和jQuery檢查素數頁總理nuber jQuery的邏輯

我寫了這個代碼,但沒有得到結果幫我

<!Doctype Html> 
 
<html> 
 
<head> 
 
\t <title> 
 
\t \t Jquery Tasks 
 
\t </title> 
 
\t <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script> 
 
\t <script src="jquery-2.1.4.min.js"></script> 
 
\t <script> 
 
\t $(document).ready(function() 
 
\t { 
 
\t  // storing number in variable 
 
     var number= parseInt($("#txtnum").val()); 
 
      $("#txtnum").keypress(function (e) { 
 

 
      if (e.which >= 48 || e.which <= 57) 
 
      { 
 
       
 
      }; 
 
      else 
 
      { 
 
       $("#error").html("Please enter only number number").show().fadeOut("slow"); 
 
       return false; 
 
      } 
 
     }); 
 
    $("#check").click(function() 
 
    { 
 
     for (var i = 1; i < number; i++) 
 
       { 
 
      \t  if (number%i==0) 
 
      \t  { 
 
      \t   \t res++; 
 
      \t  }; 
 
       }; 
 
      
 
      if (res==2) 
 
       { 
 
      \t  $("#error").html("Entered number is a prime number").show().fadeOut("slow"); 
 
       }; 
 
      else 
 
       { 
 
       $("#error").html("Entered number is not a prime number").show().fadeOut("slow"); 
 
       return false; 
 
       }; 
 
    }); 
 

 
\t </script> 
 
</head> 
 
<body> 
 
\t <table align="center"> 
 
\t \t 
 
\t \t <tr> 
 
\t \t <td> 
 
\t \t </td> 
 
\t \t <td align="center"> 
 
\t \t  <h2>Prime number checking</h2> 
 
\t \t </td> 
 
\t \t <td> 
 
\t \t </td> 
 
\t \t </tr> 
 
\t \t <tr> 
 
\t \t \t <td> 
 
\t \t \t \t Enter Any Number 
 
\t \t \t </td> 
 
\t \t \t <td> 
 
\t \t \t \t <input type="text" id="txtnum"> 
 
\t \t \t </td> 
 
\t \t \t <td> 
 
\t \t \t \t <span id="error"> </span> 
 
\t \t \t </td> 
 
\t \t </tr> 
 
\t \t <tr> 
 
\t \t <td> 
 
\t \t </td> 
 
\t \t <td align="center"> 
 
\t \t  <input type="submit" value="Check" id="check"> 
 
\t \t </td> 
 
\t \t <td> 
 
\t \t </td> 
 
\t \t </tr> 
 
\t </table> 
 
</body> 
 
</html>

+0

你有語法錯誤。 – Omidam81

回答

0

你有很多錯誤在你的代碼

  • 你不需要分號後,如果 - 否則
  • 變種數量必須在提交事件處理程序
  • 水庫使用但未初始化
  • 一些括號中不正確密鑰的檢查條件應是關閉

  • (e.which> = 48 & & e.which < = 57)不||

  • 在檢查素數,你只需要檢查,直到N/2

  • 任意數量%我的條件匹配時,可以打破檢查

堅持練習更:)

$("#txtnum").keypress(function(e) { 
 

 
    if (e.which < 48 || e.which > 57) { 
 
    $("#error").html("Please enter only number number"); 
 
    return false; 
 
    } 
 
}); 
 
$("#check").click(function() { 
 
    var number = parseInt($("#txtnum").val()); 
 
    var res = 0; 
 
    for (var i = 2; i <= number/2; i++) { 
 
    if (number % i == 0) { 
 
     res++; 
 
     break; 
 
    } 
 
    } 
 
    
 
    if (res == 0) { 
 
    $("#error").html("Entered number is a prime number"); 
 
    } else { 
 
    $("#error").html("Entered number is not a prime number"); 
 
    return false; 
 
    } 
 
});
<!Doctype Html> 
 
<html> 
 

 
<head> 
 
    <title> 
 
    Jquery Tasks 
 
    </title> 
 
</head> 
 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<body> 
 
    <table align="center"> 
 

 
    <tr> 
 
     <td> 
 
     </td> 
 
     <td align="center"> 
 
     <h2>Prime number checking</h2> 
 
     </td> 
 
     <td> 
 
     </td> 
 
    </tr> 
 
    <tr> 
 
     <td> 
 
     Enter Any Number 
 
     </td> 
 
     <td> 
 
     <input type="text" id="txtnum"> 
 
     </td> 
 
     <td> 
 
     <span id="error"> </span> 
 
     </td> 
 
    </tr> 
 
    <tr> 
 
     <td> 
 
     </td> 
 
     <td align="center"> 
 
     <input type="submit" value="Check" id="check"> 
 
     </td> 
 
     <td> 
 
     </td> 
 
    </tr> 
 
    </table> 
 
</body> 
 

 
</html>

+0

坦克你全部 –

0

你的邏輯是正確的,但你有很多語法錯誤。

第一個if {} else{}不需要分號。 秒你有一些括號和括號不關閉。 第三你使用res但未定義或初始化它。

$(document).ready(function() { 
 
     var res = 0; 
 
\t  // storing number in variable 
 
\t  var number = parseInt($("#txtnum").val()); 
 
\t  $("#txtnum").keypress(function(e) { 
 

 
\t   if (e.which >= 48 && e.which <= 57) { 
 
       
 
\t   } 
 
\t   else { 
 
\t   $("#error").html("Please enter only number number").show().fadeOut("slow"); 
 
\t   return false; 
 
\t   } 
 
\t  }); 
 
\t  $("#check").click(function() { 
 
      res = 0; 
 
      var number = parseInt($("#txtnum").val()); 
 
\t   
 
\t   for (var i = 1; i < number; i++) { 
 
\t   if (number % i == 0) { 
 
\t    res++; 
 
\t   } 
 
\t   }; 
 
      console.log(res); 
 
\t   if (res >= 2) { 
 
\t   $("#error").html("Entered number is not a prime number").show().fadeOut(3000); 
 
\t   return false; 
 
\t   } 
 
\t   else { 
 
\t   $("#error").html("Entered number is a prime number").show().fadeOut(3000); 
 
\t   }; 
 
\t  }); 
 
     });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<table align="center"> 
 
\t \t 
 
\t \t <tr> 
 
\t \t <td> 
 
\t \t </td> 
 
\t \t <td align="center"> 
 
\t \t  <h2>Prime number checking</h2> 
 
\t \t </td> 
 
\t \t <td> 
 
\t \t </td> 
 
\t \t </tr> 
 
\t \t <tr> 
 
\t \t \t <td> 
 
\t \t \t \t Enter Any Number 
 
\t \t \t </td> 
 
\t \t \t <td> 
 
\t \t \t \t <input type="text" id="txtnum"> 
 
\t \t \t </td> 
 
\t \t \t <td> 
 
\t \t \t \t <span id="error"> </span> 
 
\t \t \t </td> 
 
\t \t </tr> 
 
\t \t <tr> 
 
\t \t <td> 
 
\t \t </td> 
 
\t \t <td align="center"> 
 
\t \t  <input type="submit" value="Check" id="check"> 
 
\t \t </td> 
 
\t \t <td> 
 
\t \t </td> 
 
\t \t </tr> 
 
\t </table>

+0

素數也顯示不是素數 –

+0

它不避免字符或其他 –

+0

抱歉「你的邏輯是正確的,但」邏輯和編程技巧都不好:),我認爲最好的方法是採取數學和編程課程: D – Omidam81