sql >> Base de Datos >  >> RDS >> Mysql

Autocompletado múltiple separado por comas en un campo

Mientras leía más y buscaba más, encontré un código de autocompletado remoto múltiple en el sitio web de jquery ui. Es curioso cómo puedes buscar y leer durante mucho tiempo y no encontrarte con información útil obvia.

sitio web de jquery ui .. http://jqueryui.com/autocomplete/#multiple-remote

Usé el código de ejemplo a continuación y lo edité para adaptarlo a mi aplicación.

Funciona ahora y resolvió mi problema en mi aplicación.

$(function() {
function split( val ) {
  return val.split( /,\s*/ );
}
function extractLast( term ) {
  return split( term ).pop();
}

$( "#birds" )
  // don't navigate away from the field on tab when selecting an item
  .bind( "keydown", function( event ) {
    if ( event.keyCode === $.ui.keyCode.TAB &&
        $( this ).data( "ui-autocomplete" ).menu.active ) {
      event.preventDefault();
    }
  })
  .autocomplete({
    source: function( request, response ) {
      $.getJSON( "search.php", {
        term: extractLast( request.term )
      }, response );
    },
    search: function() {
      // custom minLength
      var term = extractLast( this.value );
      if ( term.length < 2 ) {
        return false;
      }
    },
    focus: function() {
      // prevent value inserted on focus
      return false;
    },
    select: function( event, ui ) {
      var terms = split( this.value );
      // remove the current input
      terms.pop();
      // add the selected item
      terms.push( ui.item.value );
      // add placeholder to get the comma-and-space at the end
      terms.push( "" );
      this.value = terms.join( ", " );
      return false;
    }
  });
});