_zyw_- 2016-12-13 11:52 采纳率: 100%
浏览 2393
已结题

js event.returnValue的问题

各位大大们,最近在研究js的window对象这一块,对于其中的event对象印象较深,event有一个属性叫做returnValue,当设置为false时,应该是可以取消事件源对象返回数据的,但是 当我利用这一属性去屏蔽按键时发现并没有效果。
js代码:

function keyTest(){
if(!(window.event.keyCode>=48 && window.event.keyCode<=57)){
alert("输入非法!");
window.event.returnValue=false;//取消返回值,屏蔽按键
}
}
html中也只有一个输入框,没有其他的了
图片说明
在此请教各位大大

  • 写回答

1条回答 默认 最新

  • Go 旅城通票 2016-12-13 12:28
    关注

    用keydown,而且去掉alert,要不有些浏览器会忽略后面那句设置内容,而且你代码只能在ie运行,其他浏览器事件不是存储在window对象里面的,也不需要操作returnValue,返回false可以阻止

     <script>
        function keyTest(e) {
            if (!(e.keyCode >= 48 && e.keyCode <= 57)) {
                //alert("输入非法!");
                //e.returnValue = false;//取消返回值,屏蔽按键
                return false
            }
        }
    </script>
    <input type="text" onkeydown="return keyTest(event)" />
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制
  • ¥20 usb设备兼容性问题
  • ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊
  • ¥15 安装svn网络有问题怎么办
  • ¥15 Python爬取指定微博话题下的内容,保存为txt
  • ¥15 vue2登录调用后端接口如何实现
  • ¥65 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?