<form novalidate="novalidate" οnsubmit="return validity.call(this)">
<input type="text" name="t" required pattern="^\d+$" data-validity-valueMissing="提示1" data-validity-patternMismatch="提示2" />
<input type="submit" />
</form>
function validityInput() {
var t = this.validity;
if (t.valid) return true;
for (var v in t) {
if (t[v] === true) {
var err = this.getAttribute('data-validity-' + v);
if (err) {
this.setCustomValidity(err);
return this.reportValidity();
}
}
}
this.setCustomValidity('');
return this.reportValidity();
}
function validity() {
var el = this.elements;
for (var i = 0; i < el.length; i++) {
if (el[i].reportValidity && !validityInput.call(el[i])) return false;
}
return true;
}