如果数字小于7位,则Jquery将前导零添加到输入类型

时间:2014-02-11 07:27:31

标签: jquery validation

我创建的输入类型只允许最多7位的数字,如果小于7位,我想要创建的输入必须有前导零。

所以如果我输入123456,它必须在前面添加0(0123456) 如果我输入1234567仍然是1234567

<input type="text" name="contact-number" class="field numeric" maxlength="7" required>

$(".numeric").keydown(function(event) {
if ( event.keyCode == 46 || event.keyCode == 8 ) {
} else {
    if (event.keyCode < 95) {
    if (event.keyCode < 48 || event.keyCode > 57 ) {
    event.preventDefault(); 
    }
    } else {
        if (event.keyCode < 96 || event.keyCode > 105 ) {
        event.preventDefault(); 
    }
    }
}
});

$(".numeric").keyup(function(e) {
var $this = $(this);
var val = $this.val();
if (val.length < 7)
{
    //e.preventDefault();
    $this.val(0);
}
});

这是jsfiddle链接

由于

1 个答案:

答案 0 :(得分:2)

试试这样的事情:

addLeadingZeros: function( value ) {
    return ('0000000' + value.toString()).slice( - value.length );
}

(从没有测试的头部写的,但你应该想到......)