jQuery validator plugin – custom method for postal code validation
With my previous post on jQuery, I thought I would share a simple add-on method for the jQuery Validation plugin. If you are from Canada or writing a Canadian validation form with a postal code field you can use this. Just add the code below in your rules script.
// Addon method for validating postal codes. Valid // formats are (X1X 1X1) or (X1X1X1) or (X1X-1X1). $.validator.addMethod("postalCode", function(value) { return value.match(/^[a-zA-Z][0-9][a-zA-Z](-| )?[0-9][a-zA-Z][0-9]$/); }, 'Please enter a valid postal code');
Then you can use the rules required:true and postalCode:true in your rule set.
jQuery really can change the way that you write JavaScript!
I recently started playing around with two JavaScript libraries, MooTools, and jQuery. After playing with MooTools for a long time and getting frustrated, I switched to jQuery. This does not mean MooTools is bad, I am no JavaScript expert and there are a lot of very nice MooTools examples on their site.
At work I write a lot of JavaScript validation in forms, and it can get very tedious. I like writing my own code, but I’ve never really liked JavaScript as much as other languages and in today’s world of ever changing technologies and browsers I finally thought why re-invent the wheel; someone has probably done this better than me already. Combine that with the fact that the form I was working on and my JavaScript was becoming particularly unwieldy, so I decided try out one of these highly praised JavaScript Libraries.
After downloading jQuery I quickly realized I would need a plugin. A quick search revealed many, many plugins, including a validation plugin called “Validation” of all things. The learning curve for jQuery and the plugin was several hours, but after setting it up I quickly began to see the power using a JavaScript library. I am now a jQuery convert.
Want to see who else is using jQuery? The list is quiet impressive. As another blogger said, if it’s good enough for them, it’s good enough for me.