2009-07-13 14 views
0

Ich versuche es einfach zu gestalten, damit meine Endbenutzer meine Websites durchsuchen, indem sie das Suchfeld automatisch ausfüllen, wenn der Benutzer ein Wort eingibt, indem er Ajax-Anrufe verwendet.Wenige Fragen zum automatischen Ausfüllen von Suchbegriffen

Jetzt zuerst werde ich Ihnen meinen Code bis jetzt zeigen und dann werde ich die Fragen hinzufügen, die ich habe. Hier

ist die HTML:

<input type="text" id="searchfield" name="q" > 

Und die jquery:

jQuery("#searchfield").keypress(function(e){ 
     var searchval = jQuery("#searchfield").val();  
     console.log(searchval); 

     /* 
     jQuery.ajax({ 
      type: 'POST', 
      url: 'ajax_handler.php', 
      dataType: 'json', 
      data: { 
       search: searchval 
      }, 
      succes: function(data){ 
       console.log("good"); 
       console.log(data.msg); 
      }, 
      error: function(data){ 
       console.log("error"); 
      } 

     }); 
      return false; 
     */ 
    }); 

Anmerkung: Ich benutze Jquery 1.3.2.min.js

  1. Nun, wenn Ich logge das searchval so ein, jedes Mal, wenn ich meinen Suchbegriff in der Konsole sehe. Aber wenn ich meine Ajax-Anfrage nach der Eingabe eines Buchstabens auslasse, wird mein Eingabefeld leer.
  2. Wenn ich meine Ajax Incomment und in Firebug suchen, wenn ich einen Brief an meine Searchox hinzufügen, scheint der Wert der Suche in meiner Ajax-Anfrage leer zu sein. Woher?
  3. Wie bekomme ich eine Dropdown-Liste von Textbox mit den vorgeschlagenen Werten. Angenommen, die Werte, die ich von den Ajax-Anfragen zurückbekomme, sind in Ordnung. (Ich wahrscheinlich neet die Werte auf ein HTML-Objekt, aber welche und wie man hinzufügen?)

Dies alles basiert auf diesem Tutorial: Link to tutorial

Ich hoffe, dass jemand mir helfen kann. Danke trotzdem!

Antwort

1

Ich denke, die Probleme mit 1. und 2. sind mit dem Satz "Return false;" am Ende deiner Funktion. Löschen Sie das und versuchen Sie es erneut.

Wie für die automatische Vervollständigung Ich schlage vor, Sie nicht Fahrrad zu erfinden und für die automatische Vervollständigung Plugins wie diese suchen: http://www.pengoworks.com/workshop/jquery/autocomplete.htm

+0

Dank für die Reaktion. Ich habe nach Plugins gesucht. Ich finde sie schwer zu bedienen, da es nie einen klaren Weg gibt, wie man es benutzt. Zum Beispiel wo gebe ich die URL für die Ajax-Anfragen. – sanders

+0

Für dieses genaue Plugin gibt es Dokumentation (die nicht so benutzerfreundlich ist): http://www.pengoworks.com/workshop/jquery/autocomplete_docs.txt Sie würden es wie folgt verwenden: $ ("# searchfield ") .autocomplete (" ajax_handler.php "); Nehmen wir an, Sie in „test“ eingegeben haben, dann Dokumentation zur automatischen Vervollständigung nach wird ajax_handler.php fordern q = Test und die Antwort sollte Elemente, die jeweils auf einer einzigen Zeile, wie enthalten: -Test Testament Testing und so auf ... Hoffe das hilft. – algiecas

Verwandte Themen