Mam pewnien problem ze stworzeniem dynamicznej tabeli pobranej z bazy mysql.
Chcę mieć taką strukutórę znaczników:
Następnię używam jquery aby chować to co znajduję się wewnątrz
<td colspan="5">
Używając najtępującego kodu:
$(document).ready(function(){ $("#work tr:odd").addClass("odd"); $("#work tr:not(.odd)").hide(); $("#work tr:first-child").show(); $("#work tr.odd").click(function(){ $(this).next("tr").toggle(); $(this).find(".arrow").toggleClass("up"); });
I gdy mam statyczną tabelę taką jak wyżej to wszystko ładnie działa. Problem pojawia się gdy chcę sobię tą tabelkę zapełnić zawartością z mysql.
Robię to tak:
<?php /* * To change this template, choose Tools | Templates * and open the template in the editor. */ require_once 'function.php'; $con = connection(); $sql = " SELECT * FROM praca ORDER BY id_praca"; $result = formatResult($result); $JSData=json_encode($result); ?>
Funkcja zwracająca dane i konwertująca je do jsona. Dane będą pobierane przez jquery i wyświetlane na stronie.
Robię to tak:
$.ajax({ type: "POST", url: "LoadTable.php", dataType : 'json', success : function(json) { for(var i=0; i<json.length; i++){ var id = json[i]['id_praca']; var promotor = json[i]['id_promotor']; var tytul = json[i]['tytul']; var opisS = json[i]['opis_short']; var opisL = json[i]['opis_long']; var rezerwacja = json[i]['rezerwacja']; $('#work').append(row); } } });
Tabela jest tworzona, jednak nie wygląda tak samo jak ta statyczna, chociaż wydaję mi się ze struktura jest identyczna. Po za tym jquery wogóle nie reaguje na zwijanie i rozwijanie dodatkowego wiersza.
Proszę o pomoc.