2011-12-08 12 views
0

JavaScriptを使用してHTMLフォームの検証を行っています。 ページを更新するときにValidator.validateInputが実行されるのはなぜですか?onblurが正しく実行されない

要素「最初に」をぼかしたときに実行します。

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); 

この行が何をしているか任意のヘルプ

答えて

2
first.onblur = Validator.validateInput(first,firstname); 

のための非常にthankfullは、2つのパラメータ(firstfirstname)でValidator.validateInputを呼んでいます。次に、first.onblurを戻り値validateInputに設定します。

したがって、ページが読み込まれたときにValidator.validateInputが実行されています。なぜなら、それはあなたがやっていることなのですから。おそらくこのようにしたいと考えています:

first.onblur = function(){ 
    Validator.validateInput(first,firstname); 
}; 
+0

ありがとうございました! –

+0

歓迎します:-) –

関連する問題