input _文本框回车或者失去光标触发事件

IE下,当一个HTML元素的属性改变的时候,都能通过 onpropertychange来即时捕获。
onchange在属性值改变时还必须使得当前元素失去焦点(onblur)才可以激活该事件。
了解这一点后我们发现onpropertychange的效果就是我们想要的,可是很遗憾,它只在IE下有效果。我们能不能找到另外一个时间来代替onpropertychange呢?
经过翻阅资料得知,在其他浏览器下可以使用oninput事件来达到同样的效果,真是太好了,我们只需要把IE浏览器区分出来就可以。 

如果您是将注册时间直接写在页面里面,那么如下写法就可以实现: 
oninput="alert(this.value);" onpropertychange="alert(this.value)" 

propertyname:就是用来获取哪个属性被修改的。

<input type="text" value="xxx" id="xx" onclick="this.myprop='xx'">  
  <script type="text/javascript">     
    document.getElementById('xx').attachEvent('onpropertychange',function(o){   
       //遍历  
    for(var item in o){ alert(item+":"+o[item]); }
    //弹出属性和值
    alert(o.propertyName);
  }); </script>


onchange="window.alert('触发事件,处理事情')"

onkeypress=" if(event.keyCode==13) { window.alert('触发事件,处理事情'); return false;}"   //回车触发事件并处理

注: 在onkeypress事件中必须加入 return false;语句 主要避免input中的输入项丢失。

原文地址:https://www.cnblogs.com/caroline4lc/p/4800667.html