oninput和onchange的区别
Ⅰ、oninput事件
oninput 事件在用户输入时触发。
该事件在 <input> 或 <textarea> 元素的值发生改变时触发。
提示: 该事件类似于 onchange 事件。不同之处在于 oninput 事件在元素值发生变化是立即触发, onchange 在元素失去焦点时触发。另外一点不同是 onchange 事件也可以作用于 <keygen> 和 <select> 元素。
语法:
HTML 中:<element oninput="myScript">;
JavaScript 中:object.oninput=function(){myScript};
JavaScript 中, 使用 addEventListener() 方法:object.addEventListener("input", myScript);尝试一下
注意: Internet Explorer 8 及更早 IE 版本不支持 addEventListener() 方法。
技术细节:
是否支持冒泡:Yes
是否可以取消:No
事件类型:Event
支持的 HTML 标签:
<input type="password">, <input type="search">, <input type="text"> 和 <textarea>
Ⅱ、onchange事件(Event 对象)
定义和用法:onchange 事件会在域的内容改变时发生。
语法:onchange="SomeJavaScriptCode"
参数:SomeJavaScriptCode
描述:必需。规定该事件发生时执行的 JavaScript。
支持该事件的 HTML 标签:<input type="text">, <select>, <textarea>
支持该事件的 JavaScript 对象:fileUpload, select, text, textarea
实例 1
在本例中,我们将在用户改变输入域内容时执行 JavaScript 代码:
<html>
<head>
<script type="text/javascript">
function upperCase(x)
{
var y=document.getElementById(x).value
document.getElementById(x).value=y.toUpperCase()
}
</script>
</head>
<body>
输入您的姓名:
<input type="text" id="fname" onchange="upperCase(this.id)" />
</body>
</html>
输出:输入您的姓名:____________________