Programación Web y Scripting > PHP
AJAX y PHP en campos de formulario
RadicalEd:
Hola chicos de SoloCodigo, tengo una consulta como siempre, la vaina es que tengo un código que genera unos campos en forma dinámica por medio de AJAX, pero estos son datos que se guardarán por medio de un <form>, ósea, estoy generando con AJAX datos que contienen un campo de texto para introducir cantidades; la vaina es que como esto es en si dinámico al introducir la cantidad y darle al boton guardar no lo toma, y es que de por si ese código generado no existe dentro del código de la página.
Alguna idea???
DriverOp:
Cómo que no existe... Si el navegador te lo muestra entonces sí existe. Otra cosa es que la sintaxis sea errónea. De todas formas no entendí bien qué estás haciendo y cuál es tu problema. ¿Algún ejemplo para mostrar?.
RadicalEd:
Genera un dato con AJAX y dale Ver Código Fuente a la página y veras que esos datos no existen.
shadow_rev:
El todopoderoso firebug te ayuda muchisimo para depurar cuando introduces formularios con AJAX... Hace mucho tiempo, tuve un problema similar, nos podrías ilustrar cómo estas introduciendo los nuevos campos en el formulario ?? Probablemente estés cometiendo el mismo error
RadicalEd:
Este es mi form
--- Código: Text ---<form name='frmsearch'> <table border='1' cellpading='1' cellspacing='1' class='reference'> <tr> <th class='letratd' align='center'><b>SEARCH ITEM</b></th> </tr> <tr> <td class='letratd' align='center'> <input type='text' id='search' size='14' onkeyup='buscar(this.value, ".$_SESSION['cliente'].")'> </td> </tr> </table></form> Mi código JavaScript
--- Código: Text ---var xmlhttp; //Esta función crea el objeto ajaxfunction GetXmlHttpObject(){ if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari return new XMLHttpRequest(); } if (window.ActiveXObject) { // code for IE6, IE5 return new ActiveXObject("Microsoft.XMLHTTP"); } return null;} /*********AJAX PARA BÚSQUEDA*********************/function buscar(referencia, cliente){ if (referencia.length==0) { document.getElementById("buscar").innerHTML=""; document.getElementById("buscar").style.border="0px"; return; } xmlhttp=GetXmlHttpObject() if (xmlhttp==null) { alert ("Your browser does not support XML HTTP Request"); return; } var url="js/ajax.php"; url=url+"?funcion=3&referencia="+referencia+"&cliente="+cliente; xmlhttp.onreadystatechange=function cambiar() { if (xmlhttp.readyState==4) { document.getElementById("buscar").innerHTML=xmlhttp.responseText; document.getElementById("buscar").style.border="0px solid #A5ACB2"; } } xmlhttp.open("GET",url,true); xmlhttp.send(null);}/*********************HASTA ACA***********************/ Y mi código PHP que retornará la consulta más los campos de texto.
--- Código: PHP ---switch($_GET['funcion']){ case 1: orden($_GET['cliente'], $_GET['q'], $sql); break; case 2: principal($_GET['estado'], $_GET['sucursal'], $_GET['cliente'], $sql); break; case 3: buscar($_GET['cliente'], $_GET['referencia'], $sql); break;} /* * Mostrará el item que se le pase por referencia para ser escogido * @param string $cliente El cliente conectado * @param string $referencia Referencia del sistema UNO del item * @param string $sql sql query */function buscar($cliente, $referencia, $sql){ $arrayTabla = array('IMAGE', 'REFERENCE', 'ITEM', 'CODE'); $queryt = 'SELECT itm.imagen AS '.$arrayTabla[0].', itm.referencia AS '.$arrayTabla[1].', itm.descripcion AS '.$arrayTabla[2].', itm.codigo AS '.$arrayTabla[3].' FROM tbdym_items AS itm, tbdym_lista_precios_items AS lstitm WHERE itm.imagen!="" AND itm.categoria_id="1" AND lstitm.item_id=itm.id AND lstitm.precio!="" AND lstitm.lista_id="1" AND itm.referencia LIKE "'.$referencia.'%" AND itm.codigo LIKE "%-%" GROUP BY itm.codigo LIMIT 0, 12'; $tabla = $sql->tablaImagenTexto($queryt, $arrayTabla); echo $tabla[1];} Y sobre esta capa imprimo la información
--- Código: Text ---<div id='buscar'></div>
Navegación
[#] Página Siguiente
Ir a la versión completa