码迷,mamicode.com
首页 > 其他好文 > 详细

input缓存中选值事件触发

时间:2014-11-20 12:13:16      阅读:178      评论:0      收藏:0      [点我收藏+]

标签:input框   js事件   

现在浏览器都会缓存一些input框输入的内容,这些内容只是为了以后填写方便,一般是点击两次input框就会显示像下拉框一样的选项框,但在这个框里选择的值被填充到input框中时不会触发chang,focus,blur,click,dblclick等常用事件,如果需要当用户选择缓存中的某一个缓存项时触发一个事件,用于提取数据或其它操作时常规事件是做不到的。

后来找了一些文档找到了几个不常用或者是专用性的事件:

oninput和onpropertychange


oninput 事件是当input元素的value值发生变化时就触发【只针对inpu(textarea)的value属性】

onpropertychange 事件是当dom元素的属性值发生变化时就触发【针对整个dom节点】

这两个属性虽然主要的目的不一样,但用于触发input框缓存选择很有用。

只是这两个事件有兼容问题

oninput 事件则支持FF/Opera/Safari/NetScape

onpopertychange 事件只在IE下才有效

所以在正常使用中会把两个事件同时添加,

使用JQuery时:$(‘input‘).bind(‘input propertychange‘,function(){alert(this.value)});

使用元素事件属性:

    document.getElementById(‘input‘).oninput=function(){alert(this.value)}

    document.getElementById(‘input‘).onpopertychange=function(){alert(this.value)}

注意:onchange事件是只有当元素失去焦点且值变化时才会触发,对于缓存选择中填充值是无效的即使失去焦点

本文出自 “web中的php” 博客,请务必保留此出处http://php2012web.blog.51cto.com/5585213/1579960

input缓存中选值事件触发

标签:input框   js事件   

原文地址:http://php2012web.blog.51cto.com/5585213/1579960

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!