检查号输入字段仅有8位数字,以2号开头

时间:2017-03-29 15:14:04

标签: jquery

我有一个输入字段,它已强制用户输入8位数,但我想强制他输入以2开头的数字,因为当输入第一个数字错误时给他一个警告,如果他写了2然后让他输入其余的数字。 这是我的代码:

HTML

<input type="number" maxlength="8"  class="form-control myInput" name="myInput" id="myInput" placeholder="myInput" pattern="\d{8}" required>
</div>

JQuery的

$(".myInput").unbind('keyup change input paste').bind('keyup change input paste',function(e){
    var $this = $(this) ,val = $this.val(),valLength = val.length, maxCount = $this.attr('maxlength');
    if(valLength>maxCount){
        $this.val($this.val().substring(0,maxCount));
    }
});

请帮忙。

1 个答案:

答案 0 :(得分:1)

这是我的解决方案

Jquery的

$("#myInput").on('keypress', function(){
            var numbers = $(this).val().trim();
            if(numbers[1]){
              if(numbers[0] != '2' || numbers.length > 8){
                $(this).val('');
                $('.error').html("Error the input has to start with number 2 and has to be lesser than 8 numbers");
              }else{
                $('.error').html("Good");
              }
            }
          });

HTML

<input type="number" maxlength="8" id="myInput" required>
<div class='error'>

</div>

这只是一个随意调整任何内容的例子,我删除了一些标签和东西,但你可以重新添加它们这只是为了告诉你该怎么做

因此脚本会检查是否已输入2个数字,如果是,它会检查第一个是否为2如果不显示错误消息并重置输入值,否则它写得很好

这是小提琴

https://jsfiddle.net/qh7gwecc/3/