当前位置: 代码迷 >> Web前端 >> 兼容 IE、Firefox 的遏止按键的程序
  详细解决方案

兼容 IE、Firefox 的遏止按键的程序

热度:373   发布时间:2012-09-01 09:33:03.0
兼容 IE、Firefox 的阻止按键的程序

????? 在 IE 中可以用 event.returnValue = false 来阻止按键动作的生效。在 Firefox 中用 event.preventDefault()。

????? 以下是一个检查按下的是否是数字的程序,如果不是就阻止按键动作生效。当然还不够完善,因为它把 Tab 键、回车键也禁止了。

function checkNum(event)
{
    if (event.keyCode < 48 || event.keyCode > 57)
    {
        try
        {
            event.returnValue = false;
            event.preventDefault();
        }
        catch (ex)
        {
        }
    }
}

完整实例

?

只可输入数字:<input type="text" size="10" id="num">
<script type="text/javascript">
<!--
function checkNum(event)
{
    if (event.keyCode < 48 || event.keyCode > 57)
    {
        try
        {
            event.returnValue = false;
            event.preventDefault();
        }
        catch (ex)
        {
        }
    }
}
 
var num = document.getElementById("num");
if (window.attachEvent)
{
    num.attachEvent("onkeydown", checkNum)
}
else
{
    num.addEventListener("keydown", checkNum, false);
}
//-->
</script>
?