summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/droplab
diff options
context:
space:
mode:
authorClement Ho <ClemMakesApps@gmail.com>2016-12-10 11:13:17 -0600
committerClement Ho <ClemMakesApps@gmail.com>2017-01-09 16:01:12 -0600
commit7b202460f7333e1a9997f1ee79eca71975cc676f (patch)
tree6aef936130e618e7e72b9851c8e169d7e068ec28 /app/assets/javascripts/droplab
parent98a95633f558f4f4762d4e523ef0c495d6f79f68 (diff)
downloadgitlab-ce-7b202460f7333e1a9997f1ee79eca71975cc676f.tar.gz
Fix ajax bug
Diffstat (limited to 'app/assets/javascripts/droplab')
-rw-r--r--app/assets/javascripts/droplab/droplab.js7
-rw-r--r--app/assets/javascripts/droplab/droplab_ajax_filter.js9
2 files changed, 8 insertions, 8 deletions
diff --git a/app/assets/javascripts/droplab/droplab.js b/app/assets/javascripts/droplab/droplab.js
index 42ddb7a4a56..359cd82bbcd 100644
--- a/app/assets/javascripts/droplab/droplab.js
+++ b/app/assets/javascripts/droplab/droplab.js
@@ -31,18 +31,13 @@ if ( typeof CustomEvent === "function" ) {
var CustomEvent = require('./custom_event_polyfill');
var utils = require('./utils');
-var DropDown = function(list, trigger) {
+var DropDown = function(list) {
this.hidden = true;
this.list = list;
- this.trigger = trigger;
this.items = [];
this.getItems();
this.addEvents();
this.initialState = list.innerHTML;
-
- if (this.initialState.indexOf('{{') == -1) {
- debugger
- }
};
Object.assign(DropDown.prototype, {
diff --git a/app/assets/javascripts/droplab/droplab_ajax_filter.js b/app/assets/javascripts/droplab/droplab_ajax_filter.js
index c345fda1075..0d6a7892bdc 100644
--- a/app/assets/javascripts/droplab/droplab_ajax_filter.js
+++ b/app/assets/javascripts/droplab/droplab_ajax_filter.js
@@ -5,6 +5,7 @@
require('../window')(function(w){
w.droplabAjaxFilter = {
init: function(hook) {
+ this.destroyed = false;
this.hook = hook;
this.notLoading();
@@ -49,14 +50,16 @@ require('../window')(function(w){
}
this.loading = true;
+
this.hook.list.setData([]);
var params = config.params || {};
params[config.searchKey] = searchValue;
var self = this;
this._loadUrlData(config.endpoint + this.buildParams(params)).then(function(data) {
- self.hook.restoreInitialState.call(self.hook);
- self.hook.list.setData.call(self.hook.list, data[0]);
+ if (!self.destroyed) {
+ self.hook.list.setData.call(self.hook.list, data[0]);
+ }
self.notLoading();
});
},
@@ -92,6 +95,8 @@ require('../window')(function(w){
clearTimeout(this.timeout);
}
+ this.destroyed = true;
+
this.hook.trigger.removeEventListener('keydown.dl', this.debounceTriggerWrapper);
this.hook.trigger.removeEventListener('focus', this.debounceTriggerWrapper);
}