是否在Javascript中创建输入掩码的任何指南 -

时间:2010-07-12 09:33:07

标签: javascript

我想在Javascript中创建类似日期输入掩码的不同输入掩码。 什么是创建面具的最佳方式。 (没有任何框架!)

由于

1 个答案:

答案 0 :(得分:1)

将事件侦听器附加到输入的onKeyDown处理程序。像这样:

function numericOnly( e )
{

if( !e ) e = event;
var kc = e.which || e.keyCode;
var shift = e.shiftKey;

// Numeric and decimal point only
return( kc == 8 || kc == 9 || kc == 46 ||     // Backspace, tab, delete
        kc == 37 || kc == 39 ||               // Left and right arrow keys
        kc == 110 || kc == 190 ||             // Decimal point (keyboard and num pad)
      ( kc >= 48 && kc <= 57 && !shift ) ||   // Digits above letter (no shift)
      ( kc >= 96 && kc <= 105 ) );            // Digits on num pad
}

对于日期验证,您还应包含/字符。然后我会在输入上的onBlur事件上附加一个事件处理程序。使用偶数处理程序对正则表达式运行输入以确保输入正确的日期。

<input onkeydown="JavaScript: numericOnly( e );"
       onblur="JavaScript: checkDate( this.value );">