2

Form.Validate入力が失敗したときにクラスがイベントを発生させない理由がわかりません。これは私が行った簡単なテストです。

HTML

<form id="IndicatorIndexForm" action="">
    <input type="text" id="IndicatorKilometers" data-validators="minLength:10" name="data[Indicator][kilometers]"/>
    <input type="submit" value="Valider" class="">
</form>

JS

var myForm = new Form.Validator($('IndicatorIndexForm'), {
    onFormValidate: function(resp,form,e){
        console.log('error');
    },
    elementFail: function(el,errors){
        console.log('elementFail');
        console.log(el);
        console.log(errors);
    },
    elementValidate: function(resp,el,validator,is_warning){
        console.log('elementValidate');
        console.log(resp);
        console.log(el);
        console.log(validator);
        console.log(is_warning);
    }
});

しかし、フォームを送信すると、コンソールに「エラー」しか表示されません。ドキュメントを正しく理解していれば、他の2つの機能も起動するはずです...何かを忘れているように感じます..何かアイデアはありますか?

これがjsfiddleです http://jsfiddle.net/HJX3K/2/

4

1 に答える 1

1

はい。onイベントのプレフィックス がありません:

var myForm = new Form.Validator($('IndicatorIndexForm'), {
    onFormValidate: function(resp,form,e){
        console.log('error');
    },
    onElementFail: function(el,errors){
        console.log('elementFail');
        console.log(el);
        console.log(errors);
    },
    onElementValidate: function(resp,el,validator,is_warning){
        console.log('elementValidate');
        console.log(resp);
        console.log(el);
        console.log(validator);
        console.log(is_warning);
    }
});
于 2011-12-06T13:10:28.063 に答える