2
我正在使用oninvalid event
來定製錯誤驗證消息。顯然它不是supported在我的測試中確認的Internet Explorer中。我必須支持IE 11.那裏有什麼樣的解決方法?oninvalid event&Internet Explorer?
編輯:
也許它會更容易,如果我表現出的代碼示例正是我在做什麼
"using strict";
(function setCustomValidation(doc) {
var elems = doc.querySelectorAll("[required]");
_.forEach(elems,
function (item) {
item.oninvalid = function(e) {
e.target.setCustomValidity("");
if (!e.target.validity.valid) {
e.target.setCustomValidity(e.target.getAttribute("data-errormessage"));
}
};
});
})(document);
我正在做一個共享的工具,它允許一個上放一個自定義錯誤消息任何必需的元素。所以你不會在瀏覽器中遇到默認的錯誤信息。我不確定oninput, onchage, & onblur
是否適用於此目的。如我錯了請糾正我。
這裏是一個jsbin
oninput。 onchange和onblur都可以使用。你可以只做'onchange =「if(!this.checkValidity())this.oninvalid(event)」'或者類似的東西,如果你從JS綁定oninvalid作爲處理器。 – dandavis
你用它做什麼? –