1.3 --- - checkout datejs.com for a proper date implementation -> complete but very heavy parser, currently overkill - rewrite required-method to use jQuery's extended val() on selects[/radios/checkboxes] - consider a field-validator object that encapsulates a single element and all methods working on it - export API browser - add example/support for other URL schemes like svn://.... - document min/max/range methods for checkboxes/selects /** * Return false, if the element is * * - some kind of text input and its value is too short * * - a set of checkboxes has not enough boxes checked * * - a select and has not enough options selected * * Works with all kind of text inputs, checkboxes and select. * * @example * @desc Declares an optional input element with at least 5 characters (or none at all). * * @example * @desc Declares an input element that must have at least 5 characters. * * @example
* Spam * * * * *
* @desc Specifies a group of checkboxes. To validate, at least two checkboxes must be selected. * * @param Number min * @name jQuery.validator.methods.minLength * @type Boolean * @cat Plugins/Validate/Methods */ /** * Return false, if the element is * * - some kind of text input and its value is too short or too long * * - a set of checkboxes has not enough or too many boxes checked * * - a select and has not enough or too many options selected * * Works with all kind of text inputs, checkboxes and selects. * * @example * @desc Declares an optional input element with at least 3 and at most 5 characters (or none at all). * * @example * @desc Declares an input element that must have at least 3 and at most 5 characters. * * @example * @desc Specifies a select that must have at least two but no more than three options selected. * * @param Array min/max * @name jQuery.validator.methods.rangeLength * @type Boolean * @cat Plugins/Validate/Methods */ - document numberOfInvalids and hideErrors /** * Returns the number of invalid elements in the form. * * @example $("#myform").validate({ * showErrors: function() { * $("#summary").html("Your form contains " + this.numberOfInvalids() + " errors, see details below."); * this.defaultShowErrors(); * } * }); * @desc Specifies a custom showErrors callback that updates the number of invalid elements each * time the form or a single element is validated. * * @name jQuery.validator.prototype.numberOfInvalids * @type Number */ /** * Hides all error messages in this form. * * @example var validator = $("#myform").validate(); * $(".cancel").click(function() { * validator.hideErrors(); * }); * @desc Specifies a custom showErrors callback that updates the number of invalid elements each * time the form or a single element is validated. * * @name jQuery.validator.prototype.hideErrors */ - remove deprecated methods - css references - http://test5.caribmedia.com/CSS/Secrets/members/michiel/floating-forms.html - http://paularmstrongdesigns.com/projects/awesomeform/ - http://dnevnikeklektika.com/uni-form/ - consider validation on page load, disabling required-checks - completely rework showErrors: manually settings errors is currently extremely flawed and utterly useless, eg. errors disappear if some other validation is triggered - add custom event to remote validation for adding more parameters - document focusInvalid() - document validation lifecycle: setup (add event handlers), run validation (prepare form, validate elements, display errors/submit form) -> show where the user can hook in via callbacks - AND depedency: specify multiple expressions as an array - add custom events for form and elements instead of more callbacks (additional options/callbacks) - beforeValidation: Callback, called before doing any validation - beforeSubmit: Callback, called before submitting the form (default submit or calling submitHandler, if specified) - animations!! - ajax validation: - in combination with autocomplete (mustmatch company name, fill out address details, validate required) - validate zip code in comparison to address, if match and state is missing, fill out state - strong password check/integration: http://phiras.wordpress.com/2007/04/08/password-strength-meter-a-jquery-plugin/ - stop firefox password manager to popup before validation - check mozilla bug tracker? - overload addMethod with a Option-variant: $.validator.addMethod({ name: "custom", message: "blablabla", parameteres: false, handler: function() { ... } }); Examples: - wordpress comment form, make it a drop-in method - ajaxForm() integration - ajaxSubmit with rules-option, more/less options to ajaxSubmit - watermark integration http://digitalbush.com/projects/watermark-input-plugin - datepicker integration - timepicker integration ( http://labs.perifer.se/timedatepicker/ ) - integration with CakePHP ( https://trac.cakephp.org/ticket/2359 ) - integration with tabs: http://www.netix.sk/forms/test.html - intergration with rich-text-editors (FCKEditor, TinyMCE, Codepress) -> In simple terms, you need to "move" the content from the TinyMCE control to the textarea for validation. $('button.save').click(function(){ if (tinyMCE) tinyMCE.triggerSave(); }); http://wiki.moxiecode.com/index.php/TinyMCE:Functions#tinyMCE.triggerSave http://www.fyneworks.com/jquery/FCKEditor/ 2.0 --- - attachValidation, removeValidation, validate (with UI), valid (without UI) - (re)move current addMethod implementation - move rules plugin option - move metadata support - make validate method chainable -> provide an accessor for the validator if necessary at all - move a few default methods to additionals, eg. dateXXX, creditcard, definitely accept