oninvalid 事件

定義和用法

當可提交的 <input> 元素無效時,會發生 oninvalid 事件。

例如,如果設置了 required 屬性,并且字段為空,則輸入字段無效(required 屬性指定輸入字段必須在提交表單之前填寫)。

實例

例子 1

如果輸入字段無效,則提示一些文本:

<input type="text" oninvalid="alert('You must fill out the form!');" required>

親自試一試

頁面下方有更多 TIY 實例。

語法

在 HTML 中:

<element oninvalid="myScript">

親自試一試

在 JavaScript 中:

object.oninvalid = function(){myScript};

親自試一試

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

object.addEventListener("invalid", myScript);

親自試一試

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

技術細節

冒泡: 不支持
可取消: 支持
事件類型: Event
支持的 HTML 標簽: <input>
DOM 版本: Level 3 Events

瀏覽器支持

表中的數字注明了完全支持該事件的首個瀏覽器版本。

事件 Chrome IE Firefox Safari Opera
oninvalid 支持 10.0 支持 支持 支持

更多實例

例子 2

如果輸入字段包含少于 6 個字符,則提示一些文本:

Name: <input type="text" id="myInput" name="fname" pattern=".{6,}" required>
<script>
document.getElementById("myInput").addEventListener("invalid", myFunction);
function myFunction() {
  alert("Must contain 6 or more characters");
}
</script>

親自試一試

例子 3

如果輸入字段包含小于 2 或大于 5 的數字,則提示一些文本:

Number: <input type="number" id="myInput" name="quantity" min="2" max="5" required>
<script>
document.getElementById("myInput").addEventListener("invalid", myFunction);
function myFunction() {
  alert("You must pick a number between 2 and 5. You chose: " + this.value);
}
</script>

親自試一試

相關頁面

JavaScript 教程:JavaScript 表單