input各种事件

分享于:2021-05-10 16:14:53


1.onfocus  当input 获取到焦点时触发

2.onblur  当input失去焦点时触发,注意:这个事件触发的前提是已经获取了焦点再失去焦点的时候才会触发该事件,用于判断标签为空。

3.onchange 当input失去焦点并且它的value值发生变化时触发,个人感觉可以用于注册时的确认密码。

4.onkeydown 按下按键时的事件触发,

5.onkeyup 当按键抬起的时候触发的事件,在该事件触发之前一定触发了onkeydown事件--相当于一个按键,两个事件,没怎么用过

6.onclick  主要是用于 input type=button,input作为一个按钮使用时的鼠标点击事件

7.onselect  当input里的内容文本被选中后执行,只要选择了就会触发,不是全部选中

8.oninput  当input的value值发生变化时就会触发,(与onchange的区别是不用等到失去焦点就可以触发了)

使用方法:

以上事件可以直接放到input的属性里,例如:<input type="text" οnfοcus="a();" οnblur="b()" οnchange="c();" οnkeydοwn="d();" />,

也可以通过js给input dom元素添加相应的事件,如:document.getElementByTagName('input').onfocus = function();


oninput 与 onkeyup的区别


oninput 只有当内容改变的时候才触发

onkeyup 当键盘上的键弹起的时候就会触发,有两点问题:【复制文本到input框的时候,onkeyup不会触发】【ctr+v 等需要同时按多个按钮的时候,会触发多次】

综合考虑,推荐使用 oninput。


来源:https://blog.csdn.net/weixin_41655541/article/details/89850349