How to add a custom validation to Magento prototype

Vlad Preda picture Vlad Preda · Feb 22, 2013 · Viewed 14.2k times · Source

I want to make a simple url validator for some custom fields. I tried the default ones (adding the class validate-url or validate-clean-url to the input) - but these don't work quite as I would like them to, so I want to write some of my own javascript, but integrated with the prototype validation.

Does anyone have any ideas how I can do this?

I didn't find anything helpful in my searches, and I am not very Prototype-savy (worked mostly with jQuery).

Answer

Renon Stewart picture Renon Stewart · Feb 22, 2013

You can create your own custom validation function using

<script type="text/javascript">
    var theForm = new VarienForm('theForm', true);
    Validation.add('validate-must-be-baz','You failed to enter baz!',function(the_field_value){
        if(the_field_value == 'baz')
        {
            return true;
        }
        return false;
    });

</script>

See http://magento-quickies.tumblr.com/post/6579512188/magento-custom-form-validation

or

if(Validation) {       
   Validation.addAllThese([     
    [
        'validation-myown',      
        'Please insert proper word',   
        function(v,r){ return v.indexOf('valid')==-1?false:true } 
    ],
   [ ]   
])
}

see http://blog.baobaz.com/en/blog/custom-javascript-form-validators