example editable javascript jquery autocomplete jeditable

javascript - example - jquery editable



Ejemplo de trabajo de jeditable y autocompletar trabajando juntos (6)

Editable: jQuery jeditable Lo he usado recientemente en mi proyecto (como tal y con una ligera modificación para trabajar con métodos de página)

Autocompletar: bassistance

Veo muchas publicaciones de google sobre esto, pero todo parece indicar que esto está en progreso. ¿Alguien sabe de una versión funcional de la funcionalidad jeditable y autocompletar trabajando juntas para que yo pueda hacer clic en el texto y obtener un cuadro de texto y tener la función de autocompletar trabajando contra ese cuadro de texto?

EDITAR: Estoy abriendo una recompensa, ya que todavía parece que ninguna de estas soluciones replica las etiquetas de desbordamiento de pila + jeditable donde puedo usar jeditable para obtener un texbox editable después de hacer clic en el texto y luego poder ingresar una lista separada por comas que autocompleta cada entrada mientras escribo (similar a ingresar etiquetas en desbordamiento de pila).


Mira esto

Edición In-situ basada en JQuery + Autocompletar

Uso

$(''#edit'').editable( ''echo.php'', // POST URL to send edited content { indicator : , // options for jeditable event: ''click'' // check jeditable.js for more options }, { url: "search.php", //url form where autocomplete options will be extracted minChars: 1, // check autocomplete.js for more options formatItem:formatItem, selectOnly: 1, inputSeparator:'';'' // a new option of inputSeparator was introduced. } );

Puede usar '','' como separador de entrada.


Tenía la necesidad de la misma funcionalidad con jeditable y autocompletar de bassistance, para una lista de correos separados por una coma. Entonces, cambié la demo de Mika Tuupola y la hice funcionar así:

$.editable.addInputType(''autocomplete'', { element: $.editable.types.text.element, plugin: function(settings, original) { $(''input'', this).autocomplete(settings.autocomplete.urlOrData, settings.autocomplete.options); } });

Y cuando llamas a editable, necesitas agregar lo siguiente:

$(''.autocomplete'').editable(''http://www.example.com/save'', { type: ''autocomplete'', autocomplete: { urlOrData: ["Aberdeen", "Ada", "Adamsville"] , // can also be url: ''http://www.example.com/autocomplete'', options: { multiple: true } } });

Lo básico que hay que entender aquí es que cuando llamas $ (''input'', this) .autocomplete (...) en realidad estás aplicando la funcionalidad del complemento autocompletar a la entrada editable, y ahí es donde debes pasar las opciones de autocompletar, a través de el objeto de configuración, que es lo mismo que la configuración que pasa a jeditable.


Esto es exactamente para lo que son las entradas personalizadas Jeditables. Compruebe la demo de trabajo rápida y sucia (comience a escribir algo que empiece con la letra a ).

La demostración se realizó en 5 líneas de código. Utiliza el complemento Autocomple de Jörn Zaefferer para autocompletar:

$.editable.addInputType(''autocomplete'', { element : $.editable.types.text.element, plugin : function(settings, original) { $(''input'', this).autocomplete(settings.autocomplete.data); } });

Entonces puedes llamar a Jeditable con algo como:

$(".autocomplete").editable("http://www.example.com/save.php";, { type : "autocomplete", tooltip : "Click to edit...", onblur : "submit", autocomplete : { multiple : true, data : ["Aberdeen", "Ada", "Adamsville", "Addyston", "Adelphi", "Adena", "Adrian", "Akron"] } });


Combinarlo con jQuery UI no es muy diferente al ejemplo anterior de Mika. Esto funciona para mí

$.editable.addInputType(''autocomplete'', { element : $.editable.types.text.element, plugin : function(settings, original) { $(''input'', this).autocomplete(settings.autocomplete); } }); $(".autocomplete").editable("http://www.example.com/save.php", { type : "autocomplete", tooltip : "Click to edit...", onblur : "submit", autocomplete : { minLength : 2, source : ["Aberdeen", "Ada", "Adamsville", "Addyston", "Adelphi", "Adena", "Adrian", "Akron"] } });


La integración de trabajo completa de dataTable, dataTables editable (heredado), jEditable, autocompletar los complementos de jQuery con fuente AJAX y los resultados actualizados en la parte inferior de la página (es decir, añadidos al cuerpo de html) se resuelve mediante:

$.editable.addInputType(''autocomplete'', { element: $.editable.types.text.element, plugin: function(settings, original) { var $row = $(this).closest(''tr'').prop(''id''); settings.autocomplete.appendTo = "#results-"+$row; $(''input'', this).autocomplete(settings.autocomplete); } });

Código editable heredado de Datatable:

{ tooltip: ''Click to update Owner'', type: ''autocomplete'', autocomplete: { serviceUrl: ''./search/users/by/name'', minChars: 5, paramName: ''username'', dataType: ''json'' }, cancel : ''Cancel'', submit : ''Submit'', }

TD en la tabla tiene:

<td id="results-${obj.taskId}">