Version 0.5.0

Released 14 July 2014

New features

  • Error message:
    • Provide the default message
    • Support translating error messages
    • Support dynamic message
  • Events:
    • Add events for form
    • Add events for field
    • Add events for validator
  • Support dynamic option:
  • Support dynamic fields:
    • Support dynamic fields
    • Add addField() and removeField() methods for managing dynamic fields
  • New options:
    • Add container option for indicating the element showing all errors
    • Showing errors in tooltip or popover
    • Add feedbackIcons option to enabled/disable feedback icons for particular fields
    • Add group option
    • Add enabled option enable/disable particular validator
    • Add excluded option to exclude particular field
  • New APIs:
    • Add getInvalidFields() method that returns all invalid fields
    • Add destroy() method
    • Add isValidContainer() method
    • Add isValidField() method
    • Add revalidateField() method
    • Add resetField() method
    • Add updateMessage() method
    • Add updateOption() method for updating the particular validator option
  • Misc:

Changes

  • $.fn.bootstrapValidator.helpers renames mod_11_10 to mod11And10, mod_37_36 to mod37And36
  • Remove submitHandler option

Improvements

  • Only enable the submit buttons if all fields are valid
  • Improve the updateStatus() method. The plugin now doesn't show the errors, feedback icons of given field if there are uncompleted validators
  • Fix feedback icons in input-group
  • Only send the submit button which is clicked
  • The uri validator now provides an option to support private/local network address
  • Clicking the feedback icon also effect to the checkbox, radio fields
  • Don't change the enable setting when the new one is the same
  • Add JSHint to Grunt build
  • Allow to override the default options. Useful for using multiple forms in the same page
  • The remote validator adds support for dynamic url and method type (GET/POST)
  • Add test suite
  • Add built time to the build file
  • Define the callback via data-bv-callback-callback attribute
  • Validation of numeric fields with decimal steps
  • Adjust the feedback icon position for .input-group element

Bug fixes

  • Fix date validator issue on IE8
  • Fix identical validator issue with not clearing has-error class
  • Fix inclusive option in the between, greaterThan and lessThan validators
  • The date validator still return valid if the value doesn't contain digits
  • file validation extension is case sensitive
  • Fix the file validator issue on IE 8
  • The creditCard validator doesn't work on IE 8
  • The cvv validator doesn't work on IE 8
  • The threshold option doesn't work on IE 8
  • The zipCode validator doesn't work for Canadian zip code
  • Added the letters 'H', 'W' and 'Z' in letter list for Canada postal code
  • Don't submit form when the callback validator completes and the submit button isn't clicked
  • The id, vat validators should return false if the country code is not supported
  • When using multiple forms with HTML attributes on the same page, the plugin options will be the same as the last one
  • stringLength validator allows spaces after max length
  • Fix the ean validator when the check digit is zero
  • IPv6 validator doesn't work
  • Custom trigger event is ignored by field validators
  • Skip the _isExcluded() when initializing the form
  • Fixed Chilean ID (RUT/RUN) finished in 'K' or 'k'

Upgrading to v0.5.0

From v0.5.0, we remove the submitHandler option. In v0.5.0, use the success.form.bv event instead.

In v0.4.5 and earlier versions:


$(form).bootstrapValidator({
    submitHandler: function(form, validator, submitButton) {
        ...
    }
});

In v0.5.0:


$(form)
    .bootstrapValidator({
        // Removing submitHandler option
    })
    .on('success.form.bv', function(e) {
        // Prevent form submission
        e.preventDefault();

        var $form        = $(e.target),
            validator    = $form.data('bootstrapValidator'),
            submitButton = validator.getSubmitButton();

        // Do whatever you want here ...
    });