oninput 事件
当用户向 <input> 中尝试输入时执行 JavaScript:
<p>在文本框中尝试输入触发函数。</p>
<input type="text" id="myInput" oninput="myFunction()">
<p id="demo"></p>
<script>
function myFunction() {
var x = document.getElementById("myInput").value;
document.getElementById("demo").innerHTML = "你输入的是: " + x;
}
</script>
定义和用法
oninput 事件在用户输入时触发。
该事件在 <input> 或 <textarea> 元素的值发生改变时触发。
提示: 该事件类似于 onchange 事件。不同之处在于 oninput 事件在元素值发生变化是立即触发, onchange 在元素失去焦点时触发。另外一点不同是 onchange 事件也可以作用于 <keygen> 和 <select> 元素。
浏览器支持
表格中的数字表示支持该事件的第一个浏览器的版本号。
| 事件 | |||||
|---|---|---|---|---|---|
| oninput | Yes | 9.0 | 4.0 | 5.0 | Yes |
语法
HTML 中:
<element oninput="myScript">
<p>该实例演示了如何向 input 元素中添加 "oninput" 事件。</p>
<p>向文本框中尝试输入即可触发事件。</p>
输入您的名字: <input type="text" value="Mickey" oninput="myFunction()">
<script>
function myFunction() {
alert("input 输入框值已发生变化。");
}
</script>
JavaScript 中:
object.oninput = function() {
myScript
};
<p>该实例演示了如何使用 HTML DOM 向 input 元素中添加 "oninput" 事件。</p>
<p>向文本框中尝试输入即可触发事件。</p>
输入您的名字: <input type="text" id="myInput" value="Mickey">
<script>
document.getElementById("myInput").oninput = function() {
myFunction()
};
function myFunction() {
alert("input 输入框值已发生变化。");
}
</script>
JavaScript 中, 使用 addEventListener() 方法:
object.addEventListener("input", myScript);
<p>该实例演示了如何使用 addEventListener() 方法向 input 元素中添加 "oninput" 事件。</p>
<p>向文本框中尝试输入即可触发事件。</p>
输入您的名字: <input type="text" id="myInput" value="Mickey">
<script>
document.getElementById("myInput").addEventListener("input", myFunction);
function myFunction() {
alert("input 输入框值已发生变化。");
}
</script>
注意: Internet Explorer 8 及更早 IE 版本不支持 addEventListener() 方法。
技术细节
| 是否支持冒泡: | Yes |
|---|---|
| 是否可以取消: | No |
| 事件类型: | Event |
| 支持的 HTML 标签: | <input type="password">, <input type="search">, <input type="text"> 和 <textarea> |
事件对象