我正在使用JavaScript验证HTML表单。 为什么我刷新页面时会执行Validator.validateInput?
我希望它在我模糊元素时执行" 首先"。
var Validator = {
init: function () {
var form = document.getElementById('form');
var first = form.elements[0];
first.focus();
var firstname = /^[a-z -']+$/;
first.onblur = Validator.validateInput(first,firstname);
非常感谢任何帮助
答案 0 :(得分:2)
first.onblur = Validator.validateInput(first,firstname);
这一行正在使用两个参数(Validator.validateInput
和first
)调用firstname
。然后它将first.onblur
设置为validateInput
的返回值。
因此,当页面加载时Validator.validateInput
正在执行,因为这就是你正在做的事情。你可能想这样做:
first.onblur = function(){
Validator.validateInput(first,firstname);
};