Hola, tengo un problema que no le encuentro solución, espero que me puedan ayudar
Utilizo ASP.NET y AJAX.NET para evitar refresh en la página. El código en el lado del servidor, programado en C#, tiene el siguiente método:
public HtmlTable Seleccion()
{
// todo el codigo respectivo para realizar una acción
// la cual es crear una HtmlTable
HtmlTable tabla = new HtmlTable();
// aquí creo las filas y columnas
// y retorno la tabla
return tabla;
}
, en el método anterior no tengo ningún tipo de problema. Creo perfectamente la tabla con algunos datos; este método lo tengo "firmado" con AJAX.NET para recibir la tabla en el lado del cliente con el response.value. Concluyendo esta parte, la tabla se crea perfectamente, y en el lado del cliente la recibo mediante una función Call_Back que responde a un evento en particular.
En el lado del cliente:
<html>
<head>
<title></title>
<script language="javascript">
function recibirTabla()
{
if(response.value == null)
{
alert("no hay tabla");
}
else{
var tabla = response.value;
// es decir, ya he recibido la tabla creada en el lado del servidor
// y la asigno a la variable tabla
var arreglo = new Array();
for(var i=0; i < tabla.Rows.length ; i++)
{
}
....... // aqui va el cierre de los tags y las llaves
Bueno, mi objetivo es: recibir la tabla y recorrerla para dejar su contenido dentro de un array. Sin embargo, cuando ejecuto el browser me lanza un error de JavaScript y en el detalle me aparece que : tabla.Rows no contiene nada !!
Para verificar si efectivamente le pasaba la tabla escribi lo siguiente (antes del for):
alert(tabla);
y cuando ejecuto la tabla si se muestra en la ventana del metodo alert. Eso me lleva a pensar que sí le paso correctamente la tabla y que además, esta tiene el contenido, porque me lo muestra.
Mi duda es si dentro del for en esta parte: tabla.Rows.length, no estoy utilizando la sintaxis adecuada (también probé con tabla.Rows.Count) , pero a pesar de que la tabla llega, me aparece que no contiene nada.
¿Qué podrá suceder?. Gracias de antemano y si algo no se entiende, lo aclaro, pero ya llevo bastantes horas viendo que pasa.