2017-12-27 907 views
0

我想在输入时检查输入值,但我的代码似乎不工作(工作片段,但MVC VS 2013)
我的代码有问题吗?在输入时检查输入(仅限数字)

$(document).ready(function(){ 
 

 
     $('#txtAge').keyup(function(){ 
 
      var pattern = /^\d+$/; 
 
      if(pattern.test($(this).val()) && $(this).val()!=''){ 
 

 
       $("#age_error_message").hide(); 
 
       $("#txtAge").css('border-bottom', '2px solid #34F458'); 
 
      } 
 
      else if ($(this).val() =='') { 
 
       $("#age_error_message").html("Please enter your age"); 
 
       $("#age_error_message").show(); 
 
       $("#txtAge").css('border-bottom', '2px solid #F90A0A'); 
 
       
 
      } 
 
      else { 
 
       $("#age_error_message").html("Should contain number only"); 
 
       $("#age_error_message").show(); 
 
       $("#txtAge").css('border-bottom', '2px solid #F90A0A'); 
 
       
 
      } 
 

 
     }); 
 
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"> 
 
</script> 
 
Age: <input name="age" id="txtAge" type="text" class="btn-sm form-control " placeholder="Your age" /> 
 
<span class="error-form btn-sm text-danger" id="age_error_message"></span>

+1

你的代码在这里工作得很好,问题是什么? –

+0

控制台中是否有错误? –

回答

2

改变这样的。你的代码工作正常

$('#txtAge').keyup(function(){ 
     var pattern = /^\d+$/; 
     if(pattern.test($(this).val()) && $(this).val()!=''){ 

      $("#age_error_message").hide(); 
      $("#txtAge").css('border-bottom', '2px solid #34F458'); 
     } 
     else if ($(this).val() =='') { 
      $("#age_error_message").html("Please enter your age"); 
      $("#age_error_message").show(); 
      $("#txtAge").css('border-bottom', '2px solid #F90A0A'); 

     } 
     else { 
      $("#age_error_message").html("Should contain number only"); 
      $("#age_error_message").show(); 
      $("#txtAge").css('border-bottom', '2px solid #F90A0A'); 

     } 

    }); 

验证.. https://jsfiddle.net/knv8grt6/

+0

我没有看到任何代码的变化。你有OP的代码的确切副本。 –

0

这似乎我的代码does not工作BCZ我把多函数“脚本“标签。当我创建新的'脚本'标签,然后把我的代码,它工作正常。有人可以解释吗?