Domanda

Ho un campo con completamento automatico e mi chiedo solo come posso usarlo per più parole? Quando scrivo la prima parola funziona perfettamente, ma quando spazio e digito la seconda parola, restituisce le due parole al server e ovviamente i risultati sono sbagliati!

ad es. quando scrivo le due parole,

"Java javascript"

la prima parola 'Java', completamento automatico funziona bene, estrarre l'elenco.

ma quando spazio e digito javascript, il completamento automatico invia 'Java + javascript "alla mia funzione Ajax.

Qualche idea su come risolvere questo problema?

È stato utile?

Soluzione

Sembra che non puoi, l'implementazione integrata non lo supporta - puoi vedere nel link sopra: " non fa parte della versione stabile o distribuzione " ;.

Tuttavia, ho scaricato e utilizzato la versione esterna, disponibile qui :

http://bassistance.de/jquery-plugins/jquery-plugin- completamento automatico /

è un po 'più grande, ma l'utilizzo è esattamente lo stesso, non devi cambiare nulla, per la selezione multipla, aggiungi alle opzioni {multiple: true}

Aggiorna

JQueryUI ora è stato aggiornato per le versioni più recenti rendendo obsoleta questa risposta. Un esempio aggiornato può essere trovato qui

http://jqueryui.com/demos/autocomplete/#multiple

Altri suggerimenti

Se stai utilizzando il "bassistance" versione del completamento automatico, è integrata. Ma se si utilizza la versione dell'interfaccia utente jQuery, c'è un esempio qui:

http://jqueryui.com/demos/autocomplete/#multiple

$("#tagnames").autocomplete("/tags/filter", {
        max: 6,
        highlightItem: true,
        multiple: true,
        multipleSeparator: " ", 
  })

Per abilitare il completamento automatico per più parole devi impostare le opzioni multiple: true e multipleSeparator: " & Quot;

Aggiungendo un commento per una risposta più completa, supponiamo che tu abbia due possibili selezioni con un prefisso comune:

ip5 , batteria ip5

se l'utente digita nella casella di testo ip5, la prima selezione sopra verrà automaticamente scelta senza lasciare che l'utente continui a digitare per la seconda selezione, per evitare questo comportamento, assicurati di utilizzare l'opzione

triggerSelectOnValidInput: true,

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top