6

是否可以(跨浏览器兼容)在用户完成击键后取消击键(例如在文本框上)

我当前使用的代码在显示击键后编辑文本框值:

$('.number').keypress(function() {
    this.value = this.value.replace(/[^0-9\.]/g, '');
});
4

2 回答 2

4
$('.number').keypress(function() {
    if ( this.value == 'foobar' ){
        // "Cancel" keystroke
        return false;
    }
    this.value = this.value.replace(/[^0-9\.]/g, '');
});
于 2010-05-31T15:21:21.887 回答
4

已解决(并已更新)

抱歉,我没有测试最明显的选项 - 有效:

$('.number').keypress(function(event) {
    return /[0-9\.]/.test(String.fromCharCode(event.keyCode));
});
于 2010-05-31T15:27:57.237 回答