Hola Arkhel, gracias por contestar, lo probe y no me funciono... te comento en detalle como tengo armada la cosa:
Una tabla dinamica con PHP:
Código PHP:
// includes de Conexión a BASE y QUERYs
echo "<table class=\"list_table\" align=\"center\">";
echo "<tr class=\"list_tr_head\">";
//Headers
for ($i = 0; $i< 10; $i++) //saco 10 columnas - headers
{
$name=$this->fields[$i];
$sort=$_GET['sort'];
$orden=$_GET['orden'];
// Headers
echo "<td>".$name."</td>";
}
echo "<td>operaciòn</td></tr>";
while ($rows = mysql_fetch_row($result))
{
$id=$rows[0];
echo "<TR id=\"edita$id\">"; //Identifico para posterior Actualización
for ($i = 0; $i < 10; $i++) //saco 10 columnas - datos
{
echo "<td > ".$rows[$i]."</td>";
}
echo "<td><img onclick=\"editar($id); actualiza($id);\" src=\"img/edit.png\" title=\"Editar $id\">
</td></tr>";
}
echo "</table>";
Hasta aca es normal, una tabla simple.
Fijate que a cada Linea (<TR>) le asigno un ID para actualizarlo mas adelante.
La cosa funciona asi, cuando hago click en la Imagen EDIT.PNG, uso una funcion que edita el registro y le setea un dato. Cuando se cambia la informacion, necesito Actualizar esa Linea (<tr>) con los datos traidos desde la BD, entonces uso esta funcion:
Código:
function actualiza(id){
//instancio el objetoAjax
ajax2=objetoAjax();
ajax2.open("GET", "editado.php?id="+id);
ajax2.onreadystatechange=function() {
if (ajax2.readyState==4) {
//Identifico el <TR> a Actualizar concatenando...
tr='edita'+id;
editarTR = document.getElementById(tr);
//muestro los resultados de editado.php en base al id enviado.
editarTR.innerHTML = ajax2.responseText;
}
}
ajax2.send(null)
}
El archivo que muestra los datos nuevos es editado.php:
Código PHP:
//...includes de Conexión a BASE y QUERYs
//Obterngo el ID recibido y hago el query sobre el Registro.
for ($i = 0; $i< 10; $i++) //saco 10 columnas - headers
{
$name=$this->fields[$i];
$sort=$_GET['sort'];
$orden=$_GET['orden'];
// Headers
echo "<td>".$name."</td>";
}
echo "<td>operaciòn</td>";
//Data
while ($rows = mysql_fetch_row($_pagi_result))
{
$id=$rows[0];
for ($i = 0; $i < 10; $i++) //saco 10 columnas - datos
{
echo "<td > ".$rows[$i]."</td>";
}
echo "<td><img onclick=\"editar($id); actualiza($id);\" src=\"img/edit.png\" title=\"Editar $id\"></td>";
}
Entonces, cuando se produce la edición de los datos en la Base, se ejecuta la funcion actualiza(); quien, a travez de AJAX, me trae los nuevos datos de la forma (<TD>campoN</TD><TD>campo...) para Insertarlos en el <TR> identificado.
Estos codigos funcionan perfectamente en Firefox, pero en IE me da el error: "Error desconocido en tiempo de ejecución"
No se que más hacer... por esto recurri a los Foreros! espero haberme explicado, Saludos.