0

我在 jsfiddle 中创建了一个演示:DEMO

function pad (str, max) 
{
  return str.length < max ? pad("0" + str, max) : str;
}

我已经使用上述函数来添加前导零。

在文本框中,我可以在冒号前输入 3 位数字。我需要输入前导零的值。程序本身显示了一个示例(如输出中的“第一部分”字段)。有没有办法做到这一点?

我还需要冒号后的 2 位数字。如何修改代码以在第一个冒号后输入两位数?我只需要一个冒号,不需要更多的冒号。例如:435:23 或 045:23 或 005:23

4

1 回答 1

0

演示:http: //jsfiddle.net/nY2QT/347/

$('#ssn').keyup(function() {
    var val = this.value.replace(/[^:\d]/g, '');
    var parts = val.split(':');
    $( "#f-length" ).html( val.length );
    $( "#f-part" ).html( pad(parts[0],3) );
    $( "#s-part" ).html( pad(parts[1],2) );
    this.value = val;

});

function pad (str, max) {
    if(str === void(0)) { str = ''; }
    return str.length < max ? pad("0" + str, max) : str;
}
于 2013-09-05T00:43:06.333 回答