Firefox中的onkeypress事件

时间:2014-10-14 08:27:03

标签: javascript firefox onkeypress

我正在寻找(似乎)常见问题的解决方案。

我希望JavaScript在输入字段中输入数据时检查特定格式。

这就是我所拥有的:

HTML:

<input onkeypress=" return fieldFormat(event)">

JavaScript:

<script type="text/javascript">

    //Checks spelling in realtime, if JavaScript is enabled.
    function fieldFormat(event){
        var charCode = (window.event) ? window.event.keyCode : event.keyCode;
        var parts = event.target.value.split('.');
        if (charCode > 31 && (charCode != 46 &&(charCode < 48 || charCode > 57)) || (parts.length > 1 && charCode == 46))
            return false;
        return true;
    }

</script>

这在Chrome和IE中运行良好。但由于某种原因,Firefox给了我麻烦^^

任何提示?

2 个答案:

答案 0 :(得分:1)

有些浏览器使用keyCode,其他浏览器使用which,请尝试以下操作:

function fieldFormat(event){
    var e = event || window.event,
        charCode = e.keyCode || e.which,
        parts = e.target.value.split('.');
    if (charCode > 31 && (charCode != 46 &&(charCode < 48 || charCode > 57)) || (parts.length > 1 && charCode == 46))
        return false;
    return true;
}

答案 1 :(得分:0)

检查一下 - 似乎是常见的https://support.mozilla.org/pl/questions/998291