1.0.0 • Published 6 years ago

dirrty v1.0.0

Weekly downloads
218
License
ISC
Repository
github
Last release
6 years ago

dirrty

lightweight jquery plugin to detect if the fields of a form had been modified.
If a field has been modified then the form is dirrty

  • Detect the moment when the form gets dirty, and trigger a custom event, for example enable a "save changes" button
  • Detect the moment when the form gets clean again, and trigger a custom event, for example disable the "save changes" button, cause is not necesary
  • Prompt the user to save changes before leaving if the form is dirty

The name comes from Christina Aguilera's 2002 song: https://www.youtube.com/watch?v=2xMWrKhLJq4

Usage

// this can be called on individual forms by id or on "form" to target all forms
// simultaneously
$('#form-id').dirrty({
  preventLeaving: false

  // this function is called when the form.trigger's "dirty"
}).on("dirty", function() {
  console.log("I'm dirty!")

  // this function is called when the form.trigger's "clean"
}).on("clean", function() {
  console.log("I'm clean!")
});

Options

namedescriptiondefault
preventLeavingshow a message when a user attempts to leave the page with a dirty formtrue
leavingMessagethe message to show when a user tries leaving the page with a dirty form. Most modern browsers no long support setting a custom message and will show their own message regardless."You have unsaved changes"
onDirtydepricated - see changefunction(){}
onCleandepricated - see changefunction(){}

Methods

$("#form-id").dirrty("isDirty");

Lets you know if the form is dirty at a givent moment

Live Demo