3.1 test task for Appiny

by spmbt

HTML

<form class=f1 action="/register" method="get">
First name: <input type="text" name="username"><br />
Age: <input type="text" name="age"><br />
Country: <input type="text" name="country"><br />
<input type="submit" value="Submit">
</form>

JavaScript

$('.f1').on({submit: function(){
    var $t = $(this), ok =0
        fields=[
            {el: $('input[name=username]',$t), reg: /^[\dA-Za-z]+$/}
            ,{el: $('input[name=age]',$t), reg: /^([3-9]|\d\d|100$)$/}
            ,{el: $('input[name=country]',$t), reg: /^[\dA-Za-z]{2}$/}
        ];
    for(var i in fields){
        var fI = fields[i];
        if(fI.reg.test(fI.el.val()))
            ok++;
        else
            fI.el.css({background:'#fbb'});
    }
    console && console.log(ok);
    return ok ==3 && !'не отправляем DEBUG';
} })
.find('input').on({keydown: function(){this.style.backgroundColor='#fff';} });