Sonntag, Juni 7, 2020

jQuery-UI-Autocomplete Absenden onclick-Element aus der dropdown-Liste

Ich bin mit dem jQueryUI autocomplete() Funktion und ich kann nicht herausfinden, wie meine form Einreichen, wenn ein Element ausgewählt ist.

Ich denke das Thema ist mit der select: event aber ich bin neu mit jQueryUI und kann nicht herausfinden, wie diese Arbeit zu machen.

Hier ist mein code, der funktioniert gut, ansonsten:

            <script type="text/javascript">
            $(document).ready(function() {
                $(function() {
                    $( "#search_box" ).autocomplete({
                        source: function(request, response) {
                            $.ajax({ url: "<?php echo site_url('autocomplete/suggestions'); ?>",
                            data: { term: $("#search_box").val()},
                            dataType: "json",
                            type: "POST",
                        success: function(data){
                            response(data);
                        },
                        select: function (event, ui) {
                                $(event.target).val(ui.item);
                                $('#search_form').submit();
                                return false;
                            }
                        }); 
                    },          
                    minLength: 1 
                    });
                });
            }); 
            </script>

Jegliche Hilfe würde sehr geschätzt werden!

  • gibt es irgendwelche Fehler-Konsole? Blick in firebug.
  • auch Sie haben nie akzeptiert, eine Antwort auf Ihre Fragen, so dass die Leute vielleicht weniger eifrig, Ihnen zu helfen.
  • Dein code funktioniert, wenn kopieren-einfügen (ohne AJAX): jsfiddle.net/uXHCQ mit einem tweak (ui.item.value statt ui.item). Was meinst du, wenn Sie sagen, dass Ihre form nicht Einreichen?
  • nichts im Zusammenhang mit dieser Abfrage, irgendwelche anderen Ideen?
  • Hallo Andreas, ich meine, dass ich das Formular Einreichen, sobald eines der Elemente ausgewählt ist, werden nur die standard-Sache, wie Google funktioniert…
  • Hat man sich bei dem Beispiel, das ich gepostet? Es sieht aus wie es ‚ s posting (es gibt nur eine 404-Seite, da die nicht eine wirkliche Aktion seinen posten zu). Gibt es etwas anderes über Ihre code?
  • Hallo Andreas, ja, dein code funktioniert, aber das Problem das ich habe ist, wie die Synchronisierung der AJAX Daten mit dem Erfolg:Rückruf/select:event. Gibt es eine Möglichkeit, Sie können Ihre Quelle: Funktion (Daten), schwieriger Umgang mit diesen verschachtelten Ereignisse? nur zur info, wenn der Typ in der „t“ meine Daten zurück, wie das folgende array [„test14″,“test15″,“test17″,“test18″,“test19“]

InformationsquelleAutor tim peterson | 2011-07-08

3 Kommentare

  1. 4

    Andrew war richtig, siehe die Geige er erwähnt. Schaltet man den Teil mit „ui.Element“ zu „ui.Element.Wert“ die Auswahl: Funktion() funktioniert jetzt perfekt.

  2. 0

    Ja, es funktioniert

    Außer wenn Sie erwarten, um den Wert Ihrer server-side script in die Seite aufgerufen, durch die Aktion…

    Für jetzt, keine Möglichkeit, zu erfahren, warum auto-submit der form nach der Auswahl durch die Maus oder durch die Tastatur und die $(event.target).val(ui.item.value) line, don ‚ T liefern Sie den Wert in $_POST array

  3. 0

    Ja, Alice ist auch Recht. Sie müssen nur fügen Sie diese Zeile in deiner onclick-Funktion:

     $('#search_form').submit();

    wo search_form ist die id des Formulars.

Kostenlose Online-Tests