RsValidator


SimpleForm


<input type="email" class="form-control" id="inputEmail" placeholder="Email"
    data-_rule="email, notBlank"
    data-_error='email("Invalid email format"), notBlank("Please, insert email")'
/>
<p class="text-danger" data-_place="inputEmail"></p> <!-- error place -->


<input type="password" class="form-control" id="inputPassword" placeholder="Password"
       data-_rule="notBlank"
       data-_error='notBlank("Please, insert password")'
/>
<p class="text-danger" data-_place="inputPassword"></p>

// Create new Validator Object
var v = new RsValidator();

// Set callback to all widget for integration with twitter bootstrap
v.setConfig({
    onError: function(w) {
        $parentBlock = w.$el.closest('.form-group');
        $parentBlock.removeClass('has-success');
        $parentBlock.addClass('has-error');
    },
    onValid: function(w) {
        $parentBlock = w.$el.closest('.form-group');
        $parentBlock.removeClass('has-error');
        $parentBlock.addClass('has-success');
    }
});

v.init();

Ajax Form


// Create new Validator Object
var v = new RsValidator();

v.init($('#ajaxExample'));

$('#ajaxLoginForm').submit(function() {
    if (!v.get('ajaxLoginForm').process())
        return false;

    $.ajax({
        url: '/'
        data: v.get('ajaxLoginForm').getValue() // Get serialized data
        ...
    })

    return false
});
        

Widgets and type conversions







Get values
$('#getValuesButton').click(function() {
    if ( v.get('widget').process() )
        alert(JSON.stringify(  v.get('widget').getValue() ));

    return false;
});