Hola a todos:
Soy super nueva en esto de XAJAX, pero me ha gustado bastante; bueno, hasta que me empezó a dar problemas...
Tengo una página que calcula utilidades para distintos cultivos agrícolas, donde se puede agregar , eliminar o cambiar las cantidades de insumos para poder dar un costo total y restárselo al ingreso bruto que pretende con cierto rendimiento.
El tema es que puedo eliminar y cambiar las cantidades, pero no puedo agregar filas con nuevos insumos.
Tengo separados por categorias los insumos y para cada una de ellas creo un formulario. Dentro de éste tengo una tabla con tantas filas (insumos para esa categoria) como me indique la BD que ocupa ese cultivo. Esta es una fila:
Código:
$fila="<tr id=\"obra$cultivo$i\">
<td width=\"350\" height=\"20\" align=\"left\" valign=\"middle\" bgcolor=\"$bg\" class=\"cuadro\">".$row['nombre_p']."</td>
<td width=\"80\" height=\"20\" align=\"center\" valign=\"middle\" bgcolor=\"$bg\" class=\"cuadro\"><font size=\"2\">\$ ".$row['precio_p']."</font></td>
<input type=\"hidden\" name=\"ma1$cultivo$i\" id=\"ma1".$cultivo.$i."\" value=\"".$row['precio_p']."\"/></td>
<td width=\" 80\" align=\"center\" valign=\"middle\" bgcolor=\"$bg\"><input type=\"text\" name=\"man2$cultivo$i\" id=\"man2".$cultivo.$i."\" value=\"".$row['cant']."\" size=\"5\" maxlength=\"5\" onChange=\"xajax_todomano(xajax.getFormValues('form_Mano_$cultivo'))\"/></td>
<td width=\" 100\" align=\"center\" valign=\"middle\" bgcolor=\"$bg\"><input type=\"text\" name=\"mano$cultivo$i\" id=\"mano".$cultivo.$i."\" value=\"".$row['precio_p']*$row['cant']."\" size=\"12\" maxlength=\"12\" onChange=\"xajax_todomano(xajax.getFormValues('form_Mano_$cultivo'))\"/></td>
<td width=\"20\" align=\"center\" valign=\"middle\" bgcolor=\"$bg\"><a href=\"#\"><img src=\"../images/delete.png\" width=\"16\" height=\"16\" border=\"0\" alt=\"Eliminar\" onclick=\"if(confirm('¿Realmente desea eliminar este servicio?')){xajax_eliminarFilaMano(xajax.getFormValues('form_Mano_$cultivo'),$i);}\"></a></td>
</tr>";
El $cultivo es el id del cultivo, $i es un contador de filas, $row es el resultado de la sql...y así...
Para agregar pongo:
Código:
$respuesta = new xajaxResponse();
$con= conectar();
mysql_select_db("orafti", $con);
extract($form);
$idTD="0";
switch ($form["cultivo"]) {
case 1: //cultivo 1
$id_prest=$form["presta"];
$categoria="Mano de obra";
$sql = "select * from prestacion where prestacion.id_prestacion='$id_prest' and prestacion.categoria_p='$categoria'" ;
//$id_prest --> es el id de la prestacion enviado por el select
$result1 = mysql_query($sql,$con);
$fila='';
$row = mysql_fetch_array($result1);
if ($i%2==0)
$bg='#FFFFCC';
else
$bg='#FFFF66';
$fila="<tr id=\"obra1$i\">
<td width=\"350\" height=\"20\" align=\"left\" valign=\"middle\" bgcolor=\"$bg\" class=\"cuadro\">".$row['nombre_p']."</td>
<td width=\"80\" height=\"20\" align=\"center\" valign=\"middle\" bgcolor=\"$bg\" class=\"cuadro\"><font size=\"2\">\$ ".$row['precio_p']."</font></td>
<input type=\"hidden\" name=\"ma1$cultivo$i\" id=\"ma1".$cultivo.$i."\" value=\"".$row['precio_p']."\"/></td>
<td width=\" 80\" align=\"center\" valign=\"middle\" bgcolor=\"$bg\"><input type=\"text\" name=\"man2$cultivo$i\" id=\"man2".$cultivo.$i."\" value=\"0\" size=\"5\" maxlength=\"5\" onChange=\"xajax_todomano(xajax.getFormValues('form_Mano_$cultivo'))\"/></td>
<td width=\" 100\" align=\"center\" valign=\"middle\" bgcolor=\"$bg\"><input type=\"text\" name=\"mano$cultivo$i\" id=\"mano".$cultivo.$i."\" value=\"".$row['precio_p']"*0\" size=\"12\" maxlength=\"12\" onChange=\"xajax_todomano(xajax.getFormValues('form_Mano_$cultivo'))\"/></td>
<td width=\"20\" align=\"center\" valign=\"middle\" bgcolor=\"$bg\"><a href=\"#\"><img src=\"../images/delete.png\" width=\"16\" height=\"16\" border=\"0\" alt=\"Eliminar\" onclick=\"if(confirm('¿Realmente desea eliminar este servicio?')){xajax_eliminarFilaMano(xajax.getFormValues('form_Mano_$cultivo'),$i);}\"></a></td>
</tr>";
//$respuesta->create("obra1".$i, "tr", $fila);
//$respuesta->assign("obra1".$i,"innerHTML", $fila);
$respuesta->append("obra".$cultivo$i, "innerHTML", $fila);
//echo "fila";
break;
}
return $respuesta;
mysql_close($con);
E intentado con create(), assign() y append() y nada me resulta...
Me pueden ayudar, por favor??????
Muchas gracias a quien me pueda ayudar, esto me tiene bastante
!!!