如何检查文本框值是否不是数字?

时间:2017-10-09 12:27:17

标签: javascript textbox

<!DOCTYPE html>
<html>
<body>    
<div id="text" class="CommentBox">
    Some text :
    <input type="text" />
</div>   
<script>
$(document).ready(function () {
    jQuery("#text").on("change", function () {
        var x = $('#text').value;
        if (isNaN(x)) 
        {
            window.alert("You have entered not a number");
            return false;
        });
    });        
});
</script>    
</body>
</html>

我正在尝试编写javascript代码来检查给定值是否不是数字。如果不是我想提供错误消息?如果它是数字我想检查它是否是整数并且在0和100之间。

5 个答案:

答案 0 :(得分:1)

基本上您需要转换为<add key="ClientValidationEnabled" value="true" /> <add key="UnobtrusiveJavaScriptEnabled" value="true" /> 才能将其与public void clearCartList(){ list.clear(); adapter.notifyDataSetChanged(); } 进行比较,这意味着:

Int

答案 1 :(得分:1)

您的代码中存在很多语法错误。

您的选择器会检查您的div是否有更改事件而不是您的输入,这意味着它永远不会触发代码 使用jQuery选择器而不是.val()时,应使用.value来获取元素的值。
您还可以使用事件处理程序中的this关键字来获取引用的元素 除此之外,您的代码中还有一些错误的)}

下面我已经提供了代码的工作示例。

$(document).ready(function() {
  jQuery("#text > input").on("change", function() {
    var x = $(this).val();
    if (isNaN(x)) {
      window.alert("You have entered not a number");
      return false;
    } else if (x > 0 && x < 100) {
      alert("number in between 0 and 100");
    }
  })
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="text" class="CommentBox">
  Some text :
  <input type="text" />
</div>

答案 2 :(得分:0)

试试这段代码

您直接输入input on change或为id撰写input并将其传递给javascript

&#13;
&#13;
$(document).ready(function() {
  jQuery("input").on("change", function() {
    var x = $('#text').val();
    if (isNaN(x)) {
      window.alert("You have entered not a number");
      return false;
    }
    else{
      if(x>=0 && x<=100)
      {
         window.alert("You have enter write number");
      }else{
         window.alert("You enter number between 0 to 100");
      }
    }

  });

});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="CommentBox">
  Some text :
  <input type="text" id="text" />
</div>
&#13;
&#13;
&#13;

答案 3 :(得分:0)

function numberOrNot(var input)
{
    try
    {
        Integer.parseInt(input);
    }
    catch(NumberFormatException ex)
    {
        return false;
    }
    return true;
}

如果输入为数字,则返回true,否则返回false

答案 4 :(得分:0)

您可以使用try-catch并在try块中放入任意数量的条件,如下所示。我已经提出了三个条件。

<script type="text/javascript">
function Validation(){
    var number1=document.LoginForm.number1.value;
    try{
        if(number1==""){
            throw "Empty";
        }
        if(isNaN(number1)){
            throw "Not a Number";
        }
        if(number1<0 || number1>100){
            throw "Out of range";
        }
    }
    catch(err){
        if (err=="Empty"){
            alert("Number 1 and Number 2 fields cannot be empty");
        }
        if (err=="Not a Number"){
            alert("Please enter a number");
        }
        if(err=="Out of Range"){
            alert("Out of Range");
        }
        return false;
    }
    //return true;
}
</script>