2012-06-02 5 views

Antwort

2

ich die

$('.typeahead').removeClass('dropdown-menu'); 

und

$('.typeahead').addClass('dropdown-menu'); 

, dass Drop-down zu verstecken zeigen Vorschlag verwendet haben.

6

Ja, Sie können. Es ist ganz einfach mit jquery-Methode .unbind()

Zum Beispiel:

$('.typehead').typehead(); 
//and then you can dynamically unbind this plugin 
$('.typehead').unbind(); 
+0

Danke! für deine Zeit. Aber ich kann nicht lösen. Aber ich habe $ ('. Typeahead') verwendet. RemoveClass ('dropdown-menu'); Diese Methode zum Ausblenden des Dropdown-Menüs. und fügen Sie diese Klasse erneut hinzu –

+0

Verwenden Sie diese Methode mit Vorsicht, da hierdurch alle Ereignislistener aus dem ausgewählten DOM-Element entfernt werden und nicht nur die typahead Listener (die sich auf 'blur',' focus', 'input' und' keydown befinden) '). –

1

Ich musste eine andere (und hackier) Lösung verwenden, weil ich die Typahead-Daten jedes Mal ändere, wenn ich es binde und die anderen Antworten nicht funktionieren konnte. Ich werde es hier lassen, falls jemand es braucht.

entfernen typeahead

var parent = $('.typeahead').parent(); 
var html = parent.html(); 
$('.typeahead).remove(); 
parent.html(html); 

typeahead hinzufügen

$('.typehead').typehead(); 
6

Ich weiß, ich bin spät zur Party, wird unten entfernen, anstatt nur zu verstecken.

$('.typeahead').typeahead('destroy'); 
+1

+1 Dies hilft, wenn das gleiche Feld verwendet wird (zum Beispiel in einem Popup). Das Feld wird nicht automatisch gelöscht, auf diese Weise wird der '' '' '' automatisch entfernt, ohne das Feld und/oder seinen Inhalt zu stören. Dies ist auch der richtige Weg, um die Typehead – Pierre

+0

zu entfernen, dies funktioniert nicht für meine Anwendung. es wird Daten in ganz anderen Bereichen los. aber ich benutze mein Typeahead wieder, also brauche ich eine Möglichkeit, die Daten zu aktualisieren, die es zieht. – user2847749

+0

Nicht sicher, warum es nicht für Sie arbeiten würde. Verwenden Sie Remote oder Prefetch? Verwenden Sie IE? IE hat manchmal Caching-Probleme. Wenn es IE ist, können Sie versuchen, '$ .ajaxSetup ({cache: false});' zu IE zu beheben. –

1

Dieser Code funktioniert für mich.

var typeaheadEle = $('#myTypeahead').data('typeahead'); 
if (typeaheadEle) {typeaheadEle.source = [];} 

wo myTypeahead id des Eingabeelements ist.

+0

Dies ist die beste Methode für Bootstrap v2.3.2, imo. –

0

Ich fand $('.some-typeahead-parent .tt-dropdown-menu').hide(); am besten für mehrere Datensätze Typahead arbeiten.

Verwandte Themen