oninput 事件

定义和用法

oninput 事件在元素获得用户输入时发生。

当 <input> 或 <textarea> 元素的值发生改变时,会发生此事件。

提示:此事件类似于 onchange 事件。不同之处在于 oninput 事件在元素值改变后立即发生,而 onchange 在元素失去焦点,且内容发生改变后发生。另一个区别是 onchange 事件也适用于 <select> 元素。

实例

例子 1

当用户在 <input> 字段中写入内容时执行 JavaScript:

<input type="text" oninput="myFunction()">

亲自试一试

例子 2

范围滑块 - 如何动态更新滑块值:

<input type="range" oninput="myFunction(this.value)">

亲自试一试

语法

在 HTML 中:

<element oninput="myScript">

亲自试一试

在 JavaScript 中:

object.oninput = function(){myScript};

亲自试一试

在 JavaScript 中,使用 addEventListener() 方法:

object.addEventListener("input", myScript);

亲自试一试

注释:Internet Explorer 8 或更早的版本不支持 addEventListener() 方法

技术细节

冒泡: 支持
可取消: 不支持
事件类型: Event, InputEvent
支持的 HTML 标签: <input type="color">, <input type="date">, <input type="datetime">, <input type="email">, <input type="month">, <input type="number">, <input type="password">, <input type="range">, <input type="search">, <input type="tel">, <input type="text">, <input type="time">, <input type="url">, <input type="week"> 以及 <textarea>
DOM 版本: Level 3 Events

浏览器支持

表中的数字注明了完全支持该事件的首个浏览器版本。

事件 Chrome IE Firefox Safari Opera
oninput 支持 9.0 4.0 5.0 支持