summaryrefslogtreecommitdiff
path: root/lib/scripts
diff options
context:
space:
mode:
authorMichael Hamann <michael@content-space.de>2013-02-16 18:10:00 +0100
committerMichael Hamann <michael@content-space.de>2013-02-16 18:29:32 +0100
commitb480dd4215925c5e9aaecaa5c086346b009692b4 (patch)
treeeb1e93ea90ee6996a5a3db2494111f851ba0e973 /lib/scripts
parentdd90013a5a9ce204250f4d94072e089f617e09db (diff)
downloadrpg-b480dd4215925c5e9aaecaa5c086346b009692b4.tar.gz
rpg-b480dd4215925c5e9aaecaa5c086346b009692b4.tar.bz2
Abort old quick search requests when starting new ones
This prevents old requests that need longer than the newer ones (likely, as if you type more less results are returned) from overriding the results list.
Diffstat (limited to 'lib/scripts')
-rw-r--r--lib/scripts/qsearch.js9
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/scripts/qsearch.js b/lib/scripts/qsearch.js
index 0c3609ada..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 () {
+ // 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',
@@ -84,6 +89,8 @@ var dw_qsearch = {
onCompletion: function(data) {
var max, $links, too_big;
+ dw_qsearch.curRequest = null;
+
if (data === '') {
dw_qsearch.clear_results();
return;