Author: bleny Date: 2014-04-01 12:19:00 +0200 (Tue, 01 Apr 2014) New Revision: 1786 Url: http://forge.codelutin.com/projects/wao/repository/revisions/1786 Log: refs #4483 review event binding to know when update filter values Modified: trunk/wao-web/src/main/webapp/wao.js Modified: trunk/wao-web/src/main/webapp/wao.js =================================================================== --- trunk/wao-web/src/main/webapp/wao.js 2014-04-01 09:50:30 UTC (rev 1785) +++ trunk/wao-web/src/main/webapp/wao.js 2014-04-01 10:19:00 UTC (rev 1786) @@ -104,18 +104,31 @@ this.model = new SampleRowsFilterModel(filterValuesUrl); this.view = new SampleRowsFilterView(this.model, $filtersForm); - this.onFilterChange = function () { + this.updateFilterValues = function () { var filter = this.view.getFilter(); this.model.updateFilterValues(filter); }; this.init = function () { - this.view.$selects.blur(function () { - self.onFilterChange(); - }); - this.view.$inputs.blur(function () { - self.onFilterChange(); - }); + + var markChange = function () { + $(this).data('value-changed', true); + } + var updateFilterValuesIfValueChanged = function () { + if ($(this).data('value-changed')) { + $(this).data('value-changed', false); + self.updateFilterValues(); + } + } + + this.view.$selects.change(markChange); + this.view.$inputs.change(markChange); + + this.view.$selects.blur(updateFilterValuesIfValueChanged); + this.view.$inputs.blur(updateFilterValuesIfValueChanged); + this.view.$selects.mouseleave(updateFilterValuesIfValueChanged); + this.view.$inputs.mouseleave(updateFilterValuesIfValueChanged); + } };
participants (1)
-
bleny@users.forge.codelutin.com