X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/a6633642232efd164d4708967ab59e498fbff896..refs/pull/4062/head:/resources/js/components/submit-on-change.js diff --git a/resources/js/components/submit-on-change.js b/resources/js/components/submit-on-change.js index 979967242..da4ac6996 100644 --- a/resources/js/components/submit-on-change.js +++ b/resources/js/components/submit-on-change.js @@ -1,12 +1,20 @@ +import {Component} from "./component"; + /** * Submit on change * Simply submits a parent form when this input is changed. - * @extends {Component} */ -class SubmitOnChange { +export class SubmitOnChange extends Component { setup() { - this.$el.addEventListener('change', () => { + this.filter = this.$opts.filter; + + this.$el.addEventListener('change', (event) => { + + if (this.filter && !event.target.matches(this.filter)) { + return; + } + const form = this.$el.closest('form'); if (form) { form.submit(); @@ -14,6 +22,4 @@ class SubmitOnChange { }); } -} - -export default SubmitOnChange; \ No newline at end of file +} \ No newline at end of file