【问题标题】:Allow Ctrl+C, Ctrl+X and Ctrl+V combinations in textbox using javascript使用 javascript 在文本框中允许 Ctrl+C、Ctrl+X 和 Ctrl+V 组合
【发布时间】:2013-10-18 11:09:04
【问题描述】:

我创建了一个要验证输入的网络表单。用户只能输入数字(包括Ctrl+CCtrl+XCtrl+V 组合)。

下面是我的javascript代码。

 var unicode = e.charCode ? e.charCode : e.keyCode
    if (unicode != 8 && unicode != 9 && unicode != 46 && unicode != 37 && unicode != 39) { //if the key isn't the backspace key (which we should allow)
        if (unicode < 48 || unicode > 57) //if not a number
            return false //disable key press
    }

但它不是验证(“.”)句点作为删除的关键代码以及 Ctrl+CCtrl的组合>+XCtrlV 不起作用。

谁能帮忙?

【问题讨论】:

  • 取消非数字按键可能不是可行的方法,因为您破坏了任何默认功能;例如,箭头键也不起作用。您可以添加一个过滤器来过滤所有非数字字符 onblur 吗?
  • 用户也可以进入菜单->编辑->粘贴,不触发任何键盘事件。

标签: javascript asp.net validation


【解决方案1】:

我在下面找到了解决方案:

function numbersonly(evt) {
        evt = (evt) ? evt : window.event;
        var charCode = (evt.which) ? evt.which : evt.keyCode;
        if (charCode > 31 && (charCode < 48 || charCode > 57)) {
            return false;
        }
        return true;
    }

感谢大家的时间和帮助。

【讨论】:

    猜你喜欢
    • 2016-01-19
    • 1970-01-01
    • 1970-01-01
    • 2011-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-10
    相关资源
    最近更新 更多