[ Index ] |
|
Code source de DokuWiki 2006-11-06 |
1 /** 2 * AJAX functions for the pagename quicksearch 3 * 4 * We're using a global object with self referencing methods 5 * here to make callbacks work 6 * 7 * @license GPL2 (http://www.gnu.org/licenses/gpl.html) 8 * @author Andreas Gohr <andi@splitbrain.org> 9 */ 10 11 //prepare class 12 function ajax_qsearch_class(){ 13 this.sack = null; 14 this.inObj = null; 15 this.outObj = null; 16 this.timer = null; 17 } 18 19 //create global object and add functions 20 var ajax_qsearch = new ajax_qsearch_class(); 21 ajax_qsearch.sack = new sack(DOKU_BASE + 'lib/exe/ajax.php'); 22 ajax_qsearch.sack.AjaxFailedAlert = ''; 23 ajax_qsearch.sack.encodeURIString = false; 24 25 ajax_qsearch.init = function(inID,outID){ 26 ajax_qsearch.inObj = document.getElementById(inID); 27 ajax_qsearch.outObj = document.getElementById(outID); 28 29 // objects found? 30 if(ajax_qsearch.inObj === null){ return; } 31 if(ajax_qsearch.outObj === null){ return; } 32 33 // attach eventhandler to search field 34 addEvent(ajax_qsearch.inObj,'keyup',ajax_qsearch.call); 35 36 // attach eventhandler to output field 37 addEvent(ajax_qsearch.outObj,'click',function(){ ajax_qsearch.outObj.style.display='none'; }); 38 }; 39 40 ajax_qsearch.clear = function(){ 41 ajax_qsearch.outObj.style.display = 'none'; 42 ajax_qsearch.outObj.innerHTML = ''; 43 if(ajax_qsearch.timer !== null){ 44 window.clearTimeout(ajax_qsearch.timer); 45 ajax_qsearch.timer = null; 46 } 47 }; 48 49 ajax_qsearch.exec = function(){ 50 ajax_qsearch.clear(); 51 var value = ajax_qsearch.inObj.value; 52 if(value === ''){ return; } 53 ajax_qsearch.sack.runAJAX('call=qsearch&q='+encodeURI(value)); 54 }; 55 56 ajax_qsearch.sack.onCompletion = function(){ 57 var data = ajax_qsearch.sack.response; 58 if(data === ''){ return; } 59 60 ajax_qsearch.outObj.innerHTML = data; 61 ajax_qsearch.outObj.style.display = 'block'; 62 }; 63 64 ajax_qsearch.call = function(){ 65 ajax_qsearch.clear(); 66 ajax_qsearch.timer = window.setTimeout("ajax_qsearch.exec()",500); 67 }; 68
titre
Description
Corps
titre
Description
Corps
titre
Description
Corps
titre
Corps
Généré le : Tue Apr 3 20:47:31 2007 | par Balluche grâce à PHPXref 0.7 |