La tua domanda sembra essere anche una richiesta comune sulla jQuery plugin forum e in How to implement “mustMatch” and “selectFirst” in jQuery UI Autocomplete persone sono state discutere la questione.
Il numero accepted answer per questa domanda funziona. Quindi la soluzione di Doc Hoffiday merita davvero i punti di reputazione.
In alternativa è possibile utilizzare Jörn Zaefferer's autocomplete con l'opzione "mustMatch".
<script type="text/javascript">
$(document).ready(function(){
var availableTags = ["csharp", "java", "python"];
$("#tags").autocomplete(availableTags, {
mustMatch: true
});
});
</script>
<input id="tags" />
UPDATE
Inizialmente, avevo perso che si voleva una soluzione casella combinata. Grazie per averlo reso più chiaro.
I have tweaked the combobox example.
avevo bisogno di fare alcune modifiche per rendere realtà il lavoro all'interno di una forma. Ho introdotto un breve ritardo per garantire che gli eventi accadessero nel giusto ordine. Oltre a questo ho inserito la soluzione di Doc Hoffiday.
Ho usato un evento "change", ma potresti anche essere in grado di ottenere qualcosa lavorando usando l'evento "close". Odio dirlo, ma la mia esperienza finora con il nuovo completamento automatico dell'interfaccia utente jQuery è che è un po 'inaffidabile. Le cose sembrano rovinare quando hai configurato più di un tipo di callback dell'evento.
UPDATE 2
Ho aggiunto un nuovo selettore personalizzato sulla base di soluzione di Doc Hoffiday in modo che il testo inserito non viene sovrascritto quando si verifica l'inizio di un'opzione valida. Ho anche aggiornato la sorgente in modo da limitare le opzioni offerte a corrispondenze più esatte. Spero che questo sia più vicino alle tue esigenze.
I have tweaked my previous combobox example.
fonte
2010-04-30 11:37:12
@aSeptik - sembra che funzioni su ie e chrome ... perfetto ... questo non funziona su Firefox 3.6 .4 – leora
hey bro ho riparato cuciture come firefox non odio l'event.keykode! Ma non warry ora è risolto! ;-) fammi sapere! Vedere il link demo aggiornato! PS: testarlo non sul locale jsbin! fa schifo con explorer! –
ora sembra funzionare anche su firefox, quindi grazie. L'unica cosa che manca qui (solo in firefox) è il supporto per il tasto backspace in quanto sembra non ottimale che non si possa tornare indietro. pensieri? backspace sembra funzionare in IE e Chrome – leora