JavaScript:阻止NaN进入一个令人满意的领域?

时间:2013-04-03 21:55:45

标签: javascript jquery javascript-events contenteditable

我正在寻找一种方法来制作一个仅数字(或者可扩展的,可以在运行中使用多种类型的验证器的东西)到目前为止我有类似的东西:

this.ContentEditable.bind("keydown", this, function (event) {
    if ((event.data.NumericOnly === true) && (event.which != 8) && (event.which != 189) && (event.which != 190)) {
        var c = String.fromCharCode(event.which);
        if ('0123456789'.indexOf(c) < 0) { return (false); }
    }
});

使用此方法的警告是,如果用户已经键入了&#34;。&#34; (字符190,String.fromCharCode不使用它,字符8是退格键)或&#34; - &#34; (字符189)是重复的和/或任何地方,但是在contenteditable = true的文本中的第一个字符应该被视为无效。我可以获取文本并使用return(false)取消输入;如果它已经包含&#34;。&#34;和&#34;。&#34;正在键入或检查光标是否在&#34;的位置0; - &#34;在contenteditable = true的文本中已经没有,但我喜欢更具扩展性的内容。

是否有可能获得关键事件的最终结果,以便我可以将其发送给验证器,同时我仍然可以选择取消关键事件?

0 个答案:

没有答案