En este formulario se pueden crear tantos filas de inputs, como sean necesarias (esto dependiendo de los materiales a procesar en la misma orden). Para esto usé jQuery.
Ya me funciona el autocomplete para el input estatico y para el primer input que se crea dinámicamente, pero para los demás aunque selecciono la opcion me toma el valor del primer input que se crea dinamicamente.
AYUDA POR FAVOR! GRACIAS DE ANTEMANO.
Código Javascript:
Ver original
<script type="text/javascript"> var pos = 2; $(document).ready(function () { $('#addUser') .button() .on({ click: function () { $('#tabla tbody #campos') .append("<tr id='row" + pos + "'><th width='83' class='sombra7'><input type='text' name='posicion[]' value='" + pos + "' size='2'></th><td width='110' class='sombra7'><input required type='text' name='codigo[]' size='8' class='codigo2' id='codigo"+pos+ "' ></td><td width='50' class='sombra7'><input required onChange='mayusculas(this)' type='text' name='nombre[]' class='nombre2' id='nombres" + pos + "' size='26' maxlength='30' onKeyPress='return(formatoCampo(this,event,2))'></td><td width='123' class='sombra7'><input required type='text' name='cantidad_solicitada[]' size='4' ></td><td width='100' class='sombra7'><input required type='text' name='cantidad_recibida[]' size='4'></td><td width='190' class='sombra7'><input required onChange='mayusculas(this)' type='text' name='unidad[]' size='15' maxlength='30' class='unidad2' id='unidad"+pos+ "'></td><td width='120' class='sombra7'><button id='deleteUser" + pos + "' data-id='" + pos + "'><img src='images/iconos/eliminar.png' /></button></td></tr>"); $("#nombres" + pos).autocomplete({ source: "buscarmaterial.php", }); $("#nombres" + pos).focusout(function(){ $.ajax({ url:'buscarmaterial2.php', type:'POST', dataType:'json', data:{ nombres:$('.nombre2').val()} }).done(function(respuesta){ $(".codigo2").val(respuesta.cod_material); $(".unidad2").val(respuesta.unidad); }); }); $('#deleteUser' + pos) .button() .on({ click: function () { var id = $(this).attr('data-id'); $('#row' + id).remove(); pos--; } }); pos++; } }); $('#deleteUser1').button() .on({ click: function () { var id = $(this).attr('data-id'); $('#row' + id).remove(); pos--; } }); $( "#nombre" ).autocomplete({ source: "buscarmaterial.php", }); $("#nombre").focusout(function(){ $.ajax({ url:'buscarmaterial2.php', type:'POST', dataType:'json', data:{ nombres:$('#nombre').val()} }).done(function(respuesta){ $("#codigo").val(respuesta.cod_material); $("#unidad").val(respuesta.unidad); }); }); }); </script>