Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/12/2013, 13:04
shadow_lfqf
 
Fecha de Ingreso: diciembre-2013
Mensajes: 2
Antigüedad: 10 años, 4 meses
Puntos: 0
sumar columna de una tabla según filtros

HOLAA!!! vengo en busca de su ayuda, busque y busque pero no encontré algo parecido a lo que quiero

Tengo una tabla y una de las columnas es numérico (valor).

Tengo una función jquery el cual me permite filtrar el contenido según nombre o apellido
Código Javascript:
Ver original
  1. $.expr[':'].Contains = function(x, y, z){
  2.         return jQuery(x).text().toLowerCase().indexOf(z[3].toLowerCase())>=0;
  3.     };
  4.     $('#search_nombre').keyup(function() {
  5.         buscar = $('#search_nombre').val();
  6.         buscar2 = $('#search_apellido').val();
  7.         buscar3 = $('#search_ot').val();
  8.         buscar4 = $('#search_detalle').val();
  9.         //mostramos todos los valores, para despues ir ocultando los que no coinciden
  10.         $('#listado_normal tr').show();
  11.        
  12.         //esto es para revisar si tenemos algo que buscar, sino, que no lo haga.
  13.         if(buscar.length>0){
  14.         // con la clase .nombre le decimos en cual de las celdas buscar y si no coincide, ocultamos el tr que contiene a esa celda.
  15.         $("#listado_normal tr td.nombre").not(":Contains('"+buscar+"')").parent()..hide();
  16.        
  17.  
  18.         if(buscar2.length>0){
  19.         // con la clase .nombre le decimos en cual de las celdas buscar y si no coincide, ocultamos el tr que contiene a esa celda.
  20.         $("#listado_normal tr td.apellido").not(":Contains('"+buscar2+"')").parent().hide();
  21.         }
  22.         if(buscar3.length>0){
  23.         // con la clase .nombre le decimos en cual de las celdas buscar y si no coincide, ocultamos el tr que contiene a esa celda.
  24.         $("#listado_normal tr td.ot").not(":Contains('"+buscar3+"')").parent().hide();
  25.         }
  26.         if(buscar4.length>0){
  27.         // con la clase .nombre le decimos en cual de las celdas buscar y si no coincide, ocultamos el tr que contiene a esa celda.
  28.         $("#listado_normal tr td.detalle").not(":Contains('"+buscar4+"')").parent().hide();
  29.         }
  30.    
  31.     });
  32. $('#search_apellido').keyup(function() {
  33.         buscar = $('#search_nombre').val();
  34.         buscar2 = $('#search_apellido').val();
  35.         buscar3 = $('#search_ot').val();
  36.         buscar4 = $('#search_detalle').val();
  37.         //mostramos todos los valores, para despues ir ocultando los que no coinciden
  38.         $('#listado_normal tr').show();
  39.        
  40.         //esto es para revisar si tenemos algo que buscar, sino, que no lo haga.
  41.         if(buscar.length>0){
  42.         // con la clase .nombre le decimos en cual de las celdas buscar y si no coincide, ocultamos el tr que contiene a esa celda.
  43.         $("#listado_normal tr td.nombre").not(":Contains('"+buscar+"')").parent().hide();
  44.         }
  45.         if(buscar2.length>0){
  46.         // con la clase .nombre le decimos en cual de las celdas buscar y si no coincide, ocultamos el tr que contiene a esa celda.
  47.         $("#listado_normal tr td.apellido").not(":Contains('"+buscar2+"')").parent().hide();
  48.         }
  49.         if(buscar3.length>0){
  50.         // con la clase .nombre le decimos en cual de las celdas buscar y si no coincide, ocultamos el tr que contiene a esa celda.
  51.         $("#listado_normal tr td.ot").not(":Contains('"+buscar3+"')").parent().hide();
  52.         }
  53.         if(buscar4.length>0){
  54.         // con la clase .nombre le decimos en cual de las celdas buscar y si no coincide, ocultamos el tr que contiene a esa celda.
  55.         $("#listado_normal tr td.detalle").not(":Contains('"+buscar4+"')").parent().hide();
  56.         }
  57.    
  58.     });

como hago para que al filtrar me entregue la suma según el filtro?


pensé algo así pero no me funciona

var total=0;
$(".valor").each(function(){
total += parseFloat($(this).val());
});

$("#total").val(total);

}

les agradezco de antemano


GRACIAS!

Última edición por shadow_lfqf; 17/12/2013 a las 13:11