Estoy haciendo una webapp en la que json recibe datos de php-mysql.
Tengo el esquema básico de artículos y familias de artículos para que se escoja una familia y aparezcan los artículos de esa familia.
El tema es que cuando pincho en la familia me reconoce donde he pinchado y va a artículos para filtrarlo. PERO en vez de usarme sólo la familia donde he pinchado me añade al filtro todas las familias hacia abajo desde donde he pinchado.
por ejemplo si hay 4 familias y pincho en la segunda me filtrará mostrándome los articulos de las familias 2,3 y 4.
Sabrían decirme donde está el error?
Os pongo el código que uso en las familias:
Código:
y el que uso en los artículos:$.ajax({ type:'GET', url:'familias_encodeflex.php', dataType:'json', success: function(data){ $.each(data, function(index){ var id_familia = data[index].id_familia; var familia = data[index].familia; var foto = data[index].foto; $("#listadofamilias").append('<li>'+'<a href="#articulos">'+'<img src="img/articulos/'+foto+'"/>'+'<h3>'+familia+'<input name="id_varfam" type="hidden" id="varfami" value="'+id_familia+'"></h3>'+'</a></li>'); $('#listadofamilias li').on('click', function(){ $id_fam = id_familia; articulos($id_fam); }); }) $('#listadofamilias').listview('refresh'); } });
Código:
Supongo que es una tontería, en particular creo que habría que añadirle la función articulos al append pero estoy dándole vueltas al asunto y no soy capaz.function articulos(id){ $.ajax({ type:'GET', url:'articulos_encodeflex.php?varfami=' + id, dataType:'json', success: function(data){ $.each(data, function(index2){ var id_articulo = data[index2].id_articulo; var articulo = data[index2].articulo; var precio = data[index2].precio; var familia = data[index2].familia; var foto = data[index2].foto; var descripcion = data[index2].descripcion; $("#listadoarticulos").append('<li>'+'<a class="viewItem" href="#detalle">'+'<img src="img/articulos/'+foto+'"/>'+'<h3>'+familia+articulo+'<span class="izqper">'+precio+' €</span>'+'</h3>'+'<input name="id_varart" type="hidden" value="'+id_articulo+'"><a href="#carrito" data-theme="e" data-icon="plus" data-rel="dialog" data-transition="slideup">'+'</li>'); }); }) $('#listadoarticulos').listview('refresh'); } }); }
Sabeis como solucionarlo?
muchas gracias