Foros del Web » Programando para Internet » Jquery »

Ejemplo sencillo con jQuery y TableSort que no funciona

Estas en el tema de Ejemplo sencillo con jQuery y TableSort que no funciona en el foro de Jquery en Foros del Web. Hola. Estoy intentando hacer un ejemplo muy básico que no consigo que funcione correctamente. OBJETIVO: Tengo una web muy simple, con solo un elemento <a>, ...
  #1 (permalink)  
Antiguo 21/02/2011, 06:17
 
Fecha de Ingreso: agosto-2009
Mensajes: 101
Antigüedad: 14 años, 8 meses
Puntos: 0
Ejemplo sencillo con jQuery y TableSort que no funciona

Hola.
Estoy intentando hacer un ejemplo muy básico que no consigo que funcione correctamente.

OBJETIVO: Tengo una web muy simple, con solo un elemento <a>, que cuando es pulsado carga unos datos mediante AJAX.

OBJETIVO 2: Una vez cargada la tabla, quiero aplicar TableSort.

LA primera parte la he conseguido, pero la segunda ... no consigo.

Pongo los códigos:

Código HTML:
<html>

<head>
<script src="jquery.js" type="text/javascript"></script>
<script src="jquery.tablesorter.min.js" type="text/javascript"></script>
<script>
$(function( ){
	$("#miboton").bind("click", loading);
});
function loading(event)
{
	$("#tablamaestra2").load('data.htm');
	$("#tablamaestra").sorttable();
	$("#tablamaestra").trigger("update");
	$("#tablamaestra").trigger("appendCache");
}
</script>

<title>Ejemplo jQuery</title>

</head>

<body>

<a id="miboton">Ver 2</a>
<br>
<div id="tablamaestra2">aqui</div>

</body>

</html> 
Ahora los datos a cargar data.htm:
Código HTML:
<table id="tablamaestra">
 <thead>
  <tr>
   <th>Test</th>
   <th>Col 2a</th>
   <th>Col 3a</th>
   <th>C4 a</th>
  </tr>
 </thead>
 <tbody>
  <tr>
   <td>static col 1</td>
   <td>static col 1</td>
   <td>static col 1</td>
   <td>static col 1</td>
  </tr>
  <tr>
   <td>a col 2</td>
   <td>B col 2</td>
   <td>static col 2</td>
   <td>static col 2</td>
  </tr>
  <tr>
   <td>static col 3</td>
   <td>static col 3</td>
   <td>static col 3</td>
   <td>static col 3</td>
  </tr>
  <tr>
   <td>Dstatic col 4</td>
   <td>static col 4</td>
   <td>static col 4</td>
   <td>static col 4</td>
  </tr>
 </tbody>
</table> 
Pues eso ... a ver si alguien me ilumina!
  #2 (permalink)  
Antiguo 21/02/2011, 15:04
 
Fecha de Ingreso: noviembre-2010
Mensajes: 6
Antigüedad: 13 años, 5 meses
Puntos: 0
Respuesta: Ejemplo sencillo con jQuery y TableSort que no funciona

kizas los datos traidos por ajax no se agregaron al dom, para eso tienes que hacerlo con el evento .live()
  #3 (permalink)  
Antiguo 22/02/2011, 01:06
 
Fecha de Ingreso: agosto-2009
Mensajes: 101
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: Ejemplo sencillo con jQuery y TableSort que no funciona

Pues .... sigue sin funcionar
Código HTML:
<html>

<head>
<script src="jquery.js" type="text/javascript"></script>
<script src="jquery.tablesorter.min.js" type="text/javascript"></script>

    <link href="styles.css" type="text/css" rel="stylesheet">
    <link href="tablamaestra2.css" type="text/css" rel="stylesheet">
<script>
$(function( ){
	$("#miboton").live("click", loading);
});
function loading(event)
{
	$("#tablamaestra2").load('data.htm');
	tableando();

}
function tableando() {
	alert("ok0");
	$("#tablamaestra").sorttable();
	alert("ok1");
	$("#tablamaestra").trigger("update");
	alert("ok2");
	$("#tablamaestra").trigger("appendCache");
	alert("ok3");
};
</script>

<title>Ejemplo CSS</title>

</head>

<body>

<a id="miboton">Ver 2</a>
<br>
<div id="tablamaestra2">aqui</div>


</body>

</html> 
Da error entre el OK0 y el OK1, o sea, al aplicar a la tabla el método "tablesort"
  #4 (permalink)  
Antiguo 22/02/2011, 06:42
 
Fecha de Ingreso: agosto-2009
Mensajes: 101
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: Ejemplo sencillo con jQuery y TableSort que no funciona

¿Nadie puede echarme una mano en resolver este "sencillo" ejemplo?
  #5 (permalink)  
Antiguo 22/02/2011, 07:16
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: Ejemplo sencillo con jQuery y TableSort que no funciona

Proba asi:

Código Javascript:
Ver original
  1. ...
  2. function loading(event)
  3. {    
  4.     $("#tablamaestra").load('data.htm', function(){
  5.         $(this).sorttable();
  6.         $(this).trigger("update");
  7.         $(this).trigger("appendCache");
  8.      });
  9. }
  10. $(function( ){
  11.     $("#miboton").bind("click", loading);
  12. });

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)
  #6 (permalink)  
Antiguo 22/02/2011, 07:59
 
Fecha de Ingreso: agosto-2009
Mensajes: 101
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: Ejemplo sencillo con jQuery y TableSort que no funciona

Pues ... no funciona! Ni siquiera es capaz de cargar data.htm!!

Aqui tienes el código
Código HTML:
<html>

<head>
<script src="jquery.js" type="text/javascript"></script>
<script src="jquery.tablesorter.min.js" type="text/javascript"></script>

    <link href="styles.css" type="text/css" rel="stylesheet">
    <link href="tablamaestra2.css" type="text/css" rel="stylesheet">
<script>

function loading(event)
{
   $("#tablamaestra").load('data.htm', function(){
       $(this).sorttable();
       $(this).trigger("update");
       $(this).trigger("appendCache");
    });
};
$(function( ){
       $("#miboton").bind("click", loading);
});

</script>

<title>Ejemplo CSS</title>

</head>

<body>

<a id="miboton">Ver 2</a>
<br>
<div id="tablamaestra2">aqui</div>


</body>

</html> 
  #7 (permalink)  
Antiguo 22/02/2011, 08:21
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: Ejemplo sencillo con jQuery y TableSort que no funciona

Ajustalo a tu html, algo así:

Código Javascript:
Ver original
  1. ...
  2. function loading(event)
  3. {
  4.    $("#tablamaestra2").load('data.htm', function(){
  5.         var tablamaestra = $('tablamaestra');
  6.         tablamaestra.sorttable();
  7.         tablamaestra.trigger("update");
  8.         tablamaestra.trigger("appendCache");
  9.      });
  10. }
  11. $(function( ){
  12.     $("#miboton").bind("click", loading);
  13. });
__________________
http://es.phptherightway.com/
thats us riders :)
  #8 (permalink)  
Antiguo 22/02/2011, 08:32
 
Fecha de Ingreso: agosto-2009
Mensajes: 101
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: Ejemplo sencillo con jQuery y TableSort que no funciona

Cita:
Iniciado por masterpuppet Ver Mensaje
Ajustalo a tu html, algo así:

Código Javascript:
Ver original
  1. ...
  2. function loading(event)
  3. {
  4.    $("#tablamaestra2").load('data.htm', function(){
  5.         var tablamaestra = $('tablamaestra');
  6.         tablamaestra.sorttable();
  7.         tablamaestra.trigger("update");
  8.         tablamaestra.trigger("appendCache");
  9.      });
  10. }
  11. $(function( ){
  12.     $("#miboton").bind("click", loading);
  13. });
Me da error en la linea: tablamaestra.sorttable();

Es decir que .. desde esa línea, no aplica nada más!
  #9 (permalink)  
Antiguo 22/02/2011, 08:52
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: Ejemplo sencillo con jQuery y TableSort que no funciona

Estoy usando tu codigo tal cual lo pusiste, esa funcion existe en tablesorter ?, porque creo que deberia ser:

Código Javascript:
Ver original
  1. tablamaestra.tablesorter();

tenes algun link a la version que estas utilizando ?
__________________
http://es.phptherightway.com/
thats us riders :)
  #10 (permalink)  
Antiguo 22/02/2011, 09:20
 
Fecha de Ingreso: agosto-2009
Mensajes: 101
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: Ejemplo sencillo con jQuery y TableSort que no funciona

Escribeme un email a combuilder "arroba" gmail.com y te envio todo en un zip.

Etiquetas: ejemplo, sencillo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:03.