Το API Επικύρωσης του JavaScript

Μέθοδοι και ιδιότητες DOM για τη βελτιστοποίηση ελέγχου.

Μέθοδος

Μέθοδος 描述
checkValidity() Επιστρέφει true αν το στοιχείο input περιέχει έγκυρα δεδομένα.
setCustomValidity() Ρυθμίζει την ιδιότητα validationMessage του στοιχείου input.

属性

属性 描述
validity Περιέχει τις μορφοποιημένες ιδιότητες του στοιχείου input που σχετίζονται με την αξιοπιστία.
validationMessage Περιέχει το μήνυμα που θα εμφανιστεί ο προηγουμένος περιηγητής όταν η αξιοπιστία είναι ψευδής.
willValidate Ενδεικνύει αν θα ελεγχθεί η αξιοπιστία του στοιχείου input.

Παράδειγμα - Μέθοδος checkValidity()

Εάν το πεδίο εισόδου περιέχει μη έγκυρα δεδομένα, θα εμφανιστεί ένα μήνυμα:

<input id="id1" type="number" min="100" max="300" required>
<button onclick="myFunction()">OK</button>
<p id="demo"></p>
<script>
function myFunction() {
  const inpObj = document.getElementById("id1");
  if (!inpObj.checkValidity()) {
    document.getElementById("demo").innerHTML = inpObj.validationMessage;
  }
}
</script>

Δοκιμάστε το Μέσω Εξωτερικών

有效性属性

input 元素的有效性属性包含许多与数据有效性相关的属性:

属性 描述
customError 如果设置了自定义的有效性消息,则设置为 true。
patternMismatch 如果元素的值与其 pattern 属性不匹配,则设置为 true。
rangeOverflow 如果元素的值大于其 max 属性,则设置为 true。
rangeUnderflow 如果元素的值小于其 min 属性,则设置为 true。
stepMismatch 如果元素的值根据其 step 属性无效,则设置为 true。
tooLong 如果元素的值超过其 maxLength 属性,则设置为 true。
typeMismatch 如果元素的值根据其 type 属性无效,则设置为 true。
valueMissing 如果元素(带有 required 属性)没有值,则设置为 true。
valid 如果元素的值有效,则设置为 true。

实例

rangeOverflow 属性

如果 input 字段中的数字大于 100(input 的 max 属性),则显示一条消息:

<input id="id1" type="number" max="100">
<button onclick="myFunction()">OK</button>
<p id="demo"></p>
<script>
function myFunction() {
  let text = "Value OK";
  if (document.getElementById("id1").validity.rangeOverflow) {
    text = "Value too large";
  }
}
</script>

Δοκιμάστε το Μέσω Εξωτερικών

rangeUnderflow 属性

如果 input 字段中的数字大于 100(input 的 max 属性),则显示一条消息:

<input id="id1" type="number" min="100">
<button onclick="myFunction()">OK</button>
<p id="demo"></p>
<script>
function myFunction() {
  let text = = "Value OK";
  if (document.getElementById("id1").validity.rangeUnderflow) {
    text = "Value too small";
  }
}
</script>

Δοκιμάστε το Μέσω Εξωτερικών