Witam,

zaczalem przygode z XAJAX bardzo zalezy mi na tym aby zrozumiec jak dziala,
wyszukiwarka, w zasadzie jak wyswietlaja sie podpowidzi wpisywane w polu tekstowym
tak jak na stronie np: http://perfectionorvanity.com/ czy http://targeo.pl lub google suggest.

czy te podpowiedzi wyswietlaja sie na warstwie jesli tak to jak zrobic zeby mozna bylo wybrac odpowiednia podpowiedz strzalkami i zatwierdzic enterem, chodzi mi glownie o te podpowiedzi.

pobawilem sie jakimis skryptami i dziala wyszukiwanie tak jak chcialem czyli wywolywana jest funkcja po puszczeniu klawisza: onkeyup="xajax_suggest(parametry);
tylko wyniki pokazuja sie na warstwie i sa linkami jak zrobic zeby mozna je bylo wybrac strzalkai podobnie jak na powyzszych przykladowych stronach.


Wielkie dzieki za jaka kolwiek pomoc i pozdrawiam,
Marcel


kod jest ponizej, a tutaj efekt (wyrazy z tablicy): http://www.teex.pl/xajax/examples/multiply/multiply2.php


dolaczane pliki sa tutaj: http://xajaxproject.org/download.php

  1. <?
  2.  
  3. require_once ("../../xajax_core/xajax.inc.php");
  4.  
  5.  
  6. $xajax = new xajax();
  7.  
  8.  
  9. $brands = array("ALFA ROMEO","AUDI","BMW","CHRYSLER","CITROEN","DAIHATSU","FIAT","FORD","HONDA","ISUZU","JAGUAR","LADA","LANCIA","MAZDA","MERCEDESBENZ","MITSUBISHI","NISSAN","OPEL","PEUGEOT","PORSCHE","RENAULT","ROVER","SAAB","SEAT","SKODA","SUBARU","SUZUKI","TOYOTA","VOLVO","VW","OPLPPPPP");
  10. function suggest($data) {
  11. global $brands;
  12. $outstring = '';
  13. foreach($brands as $brand) {
  14. if(ereg("^".strtolower($data),
  15. strtolower($brand)) AND $data !== '') {
  16. $outstring .= '<li><a href="#"onclick="java script:document.getElementById('search').value=''.$brand.'';document.getElementById('suggests').style.display ='none';">'.$brand.'</a></li>';
  17. }
  18. }
  19. $objResponse = new xajaxResponse();
  20. if(strlen($outstring) > 0) {
  21. $outstring = '<ul>'.$outstring.'</ul>';
  22. $display = 'block';
  23. } else
  24. $display = 'none';
  25. //$objResponse->addScript('document.getElementById('suggests').style.display = "'.$display.'"');
  26. $objResponse->assign("suggests","innerHTML", $outstring);
  27. return $objResponse;
  28. }
  29.  
  30. $xajax->registerFunction("suggest");
  31.  
  32. $xajax->processRequest();
  33.  
  34. ?>
  35.  
  36.  
  37. <html><head>
  38. <?php $xajax->printJavascript('../../'); ?>
  39. </head>
  40. <body>
  41. <form method=post action="">
  42. <input type="text" class="textbox" id="search" onkeyup="xajax_suggest(document.getElementById('search').value);" style="width:270px;"/>
  43. <input type="submit" value="szukaj">
  44. </form>
  45. <div id="suggests"> </div>
  46. </body>
  47. </html>