jquery grails autocomplete grails-plugin gsp

jquery - Grails richui autocomplete para cuadro de texto clonado



grails-plugin gsp (1)

Cuando clonas el tr clona todo el contenido, incluye el javascript creado por el plugin. Este script clonado usa el id del text field para que se auto complete . Este id Y campo de texto se requiere para cambiar para hacer trabajos de autocompletado clonados.

Utilizo la siguiente secuencia de comandos para cambiar esos identificadores:

<script type="text/javascript"> var counter = 1; function asd() { var cloneContent = "<tr>" + $("#firstTrToClone").html().replace(/giveAUniqueId/g, "giveAUniqueId" + counter++) + "</tr>"; $("#tableId").append(cloneContent); } </script>

La siguiente es mi página de trabajo completa:

<!DOCTYPE html> <html> <head> <resource:autoComplete skin="default"/> <script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> <script type="text/javascript"> var counter = 1; function asd() { var cloneContent = "<tr>" + $("#firstTrToClone").html().replace(/giveAUniqueId/g, "giveAUniqueId" + counter++) + "</tr>"; $("#tableId").append(cloneContent); } </script> </head> <body> <g:form> <table id="tableId"> <tr id="firstTrToClone"> <td> <richui:autoComplete name="name" id="giveAUniqueId" action="${createLinkTo(''dir'': ''oauthCallBack/test'')}"/> </td> </tr> </table> </g:form> <button onclick="asd()">Clone</button> </body> </html>

Intentalo..,.

Estoy usando el campo de grails richui autocomplete en mi aplicación. Funciona bien para mi cuadro de texto estático, pero cuando clono el cuadro de texto, esta característica no funciona para los cuadros de texto clonados y no muestra ningún error.

Alguna idea de cómo solucionar esto

Aquí está mi código:

<resource:autoComplete skin="default" />

hasta arriba

<richui:autoComplete name="filterLocation1" id="filterLocation1" delimChar=";" class="location_txtbox" action="${createLinkTo(''dir'': ''abc/yyy'')}" style="margin-left:5px;"/>

Este es mi campo de autocompletar

y estoy clonando así

var counter = 1; $("#addRow").click(function() { counter++; var cln = $(''#static_table tbody>tr:last'').clone(true); cln.find("[id^=''filterLocation'']").each(function(i, val) { val.id = val.id.match(/^([^0-9]+)[0-9]*$/)[1] + "" + counter; }); return false; });

Copio toda la fila, hago algunas operaciones de ocultar / mostrar e incremento los ID.