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> |