Update main.js

Added a resetModel method which is also passed to the onSubmit callback.
This commit is contained in:
LaustAxelsen 2015-01-06 22:08:44 +01:00
parent 51bce0315b
commit 2289290998
1 changed files with 10 additions and 2 deletions

View File

@ -197,10 +197,11 @@ Formsy.Form = React.createClass({
event.preventDefault();
// To support use cases where no async or request operation is needed.
// The "onSubmit" callback is called with the model e.g. {fieldName: "myValue"}
// The "onSubmit" callback is called with the model e.g. {fieldName: "myValue"},
// if wanting to reset the entire form to original state, the second param is a callback for this.
if (!this.props.url) {
this.updateModel();
this.props.onSubmit(this.model);
this.props.onSubmit(this.model, this.resetModel);
return;
}
@ -229,6 +230,13 @@ Formsy.Form = React.createClass({
this.model[name] = component.state._value;
}.bind(this));
},
// Reset each key in the model to the original / initial value
resetModel: function() {
Object.keys(this.inputs).forEach(function (name) {
this.inputs[name].resetValue();
}.bind(this));
},
// Go through errors from server and grab the components
// stored in the inputs map. Change their state to invalid