繁体   English   中英

验证10位数javascript的字段

[英]Validate field for 10 digits javascript

我有一个下面的代码用于一个字段,必须填写准确的10个数字

 $('#input-payment-egn').on('input', function() { var input=$(this); var is_egn=input.val(); $("div.wrong-egn").hide(); var re = /^\\d{10}$/; var is_egn=re.test(input.val()); if(is_egn<10){ $("div.wrong-egn").show(); } }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <form id="leasingform"> <div class="form-group required" style="padding-top: 15px;"> <label class="control-label" for="input-payment-egn"><?php echo $text_egn; ?></label> <input type="text" maxlength="10" name="egn" value="" placeholder="Въведете вашето ЕГН" id="input-payment-egn" class="form-control"/> </div> <div class="text-danger" id="wrong-egn" style="display: none;">Въведете валидно ЕГН !</div> </form> 

用户输入数字后,我想在用户单击页面上其他位置时验证输入! 我使用了正则表达式(我认为还可以)。您能帮我吗? 谢谢!

在这里,您将获得示例解决方案https://jsfiddle.net/3bgpdp7v/1/

 $('#input-payment-egn').keyup(function(e){ if($(this).val().length === 10){ e.preventDefault(); $('#wrong-egn').slideUp(); } else { $('#wrong-egn').slideDown(); } }); 
 #wrong-egn{ display: none; font-size: 12px; color: red; } 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <input type="text" maxlength="10" name="egn" value="" placeholder="Въведете вашето ЕГН" id="input-payment-egn" class="form-control"/> <div id="wrong-egn">Please provide 10digit number.</div> 

我使用jQuery keyup事件并检查字符数,而不是regex

一种方式这是另一种解决方案https://jsfiddle.net/3bgpdp7v/2/

 $('#input-payment-egn').keyup(function(e){ if($(this).val().length === 10) e.preventDefault(); }).focusout(function(){ if($(this).val().length === 10){ $('#wrong-egn').slideUp(); } else { $('#wrong-egn').slideDown(); } }); 
 #wrong-egn{ display: none; font-size: 12px; color: red; } 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <input type="text" maxlength="10" name="egn" value="" placeholder="Въведете вашето ЕГН" id="input-payment-egn" class="form-control"/> <div id="wrong-egn">Please provide 10 digit number.</div> 

这将在focusout时显示消息。

希望这会帮助你。

如果您希望仅在用户单击时显示该行为,则建议使用focusout事件。 如果用户使用跳出功能,这也会捕获。

这是一个例子。 小提琴

<input type="text" maxlength="10" name="egn" value="" placeholder="Въведете вашето ЕГН" id="input-payment-egn" class="form-control"/>

Java脚本

$('#input-payment-egn').focusout(function(e){
 if($(this).val().length < 10){
  $('#wrong-egn').css('display','block');
 }else{
  $('#wrong-egn').css('display','none');
 } 
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM