diff options
author | Klap-in <klapinklapin@gmail.com> | 2013-07-14 13:35:06 +0200 |
---|---|---|
committer | Klap-in <klapinklapin@gmail.com> | 2013-07-14 13:35:06 +0200 |
commit | 33c3b3817b00aa9384760813643fac0e33daaaff (patch) | |
tree | 481c880b00a32ba5887834b52a17248bac8bfc7c /lib/scripts/qsearch.js | |
parent | 040f0e135c37c5b544f16277ff69205369df5f1f (diff) | |
parent | fbd8067eeeb9f424981aad8b283e17f734c738c3 (diff) | |
download | rpg-33c3b3817b00aa9384760813643fac0e33daaaff.tar.gz rpg-33c3b3817b00aa9384760813643fac0e33daaaff.tar.bz2 |
merge master in branch
Diffstat (limited to 'lib/scripts/qsearch.js')
-rw-r--r-- | lib/scripts/qsearch.js | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/lib/scripts/qsearch.js b/lib/scripts/qsearch.js index c3d0d94fb..e5cc73b49 100644 --- a/lib/scripts/qsearch.js +++ b/lib/scripts/qsearch.js @@ -12,6 +12,7 @@ var dw_qsearch = { $inObj: null, $outObj: null, timer: null, + curRequest: null, /** * initialize the quick search @@ -35,12 +36,16 @@ var dw_qsearch = { // attach eventhandler to search field do_qsearch = function () { - dw_qsearch.clear_results(); + // abort any previous request + if (dw_qsearch.curRequest != null) { + dw_qsearch.curRequest.abort(); + } var value = dw_qsearch.$inObj.val(); if (value === '') { + dw_qsearch.clear_results(); return; } - jQuery.post( + dw_qsearch.curRequest = jQuery.post( DOKU_BASE + 'lib/exe/ajax.php', { call: 'qsearch', @@ -57,7 +62,6 @@ var dw_qsearch = { window.clearTimeout(dw_qsearch.timer); dw_qsearch.timer = null; } - dw_qsearch.clear_results(); dw_qsearch.timer = window.setTimeout(do_qsearch, 500); } ); @@ -85,7 +89,12 @@ var dw_qsearch = { onCompletion: function(data) { var max, $links, too_big; - if (data === '') { return; } + dw_qsearch.curRequest = null; + + if (data === '') { + dw_qsearch.clear_results(); + return; + } dw_qsearch.$outObj .html(data) |