2016-05-19 15 views
0

問題を解決するのを手伝ってください。私は妥当性検査でフォームを作る。送信ボタン出力フレーズ「Great Success!」をクリックした後警告ウィンドウで各フィールドを個別に検証する方法は?

しかし、私はコンソールで特定のフィールド(ユーザー名と電子メール)の結果を送信ボタンをクリックした後に必要です。私の試み:

events: { 
    'click #signUpButton': function (e) { 
     e.preventDefault(); 
     this.signUp(); 
    } 
}, 

signUp: function() { 
    var data = this.$el.serializeObject(); 

    this.model.set(data); 

    var modelValid = this.model.isValid(true); 
    console.log('model valid', modelValid); 

    var modelValidUsername = this.model.username.isValid(true); 
    console.log('model username valid', modelValidUsername);   

    var modelValidEmail = this.model.email.isValid(true); 
    console.log('model email valid', modelValidEmail);   

    if(this.model.isValid(true)){ 
     // this.model.save(); 
     alert('Great Success!'); 
    } 
}, 

すべてのコードはここにある:http://jsfiddle.net/udXL5/595/

答えて

1

ドキュメント(http://thedersen.com/projects/backbone-validation/#isvalid)によると、isValidは、個々のフィールドを検証するために、属性名(または属性名の配列を)受け入れる:

var modelValidUsername = this.model.isValid('username'); 
console.log('model username valid', modelValidUsername);   

var modelValidEmail = this.model.isValid('email'); 
console.log('model email valid', modelValidEmail); 

作業中:http://jsfiddle.net/bpxbLbor/

関連する問題