1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | <script type="text/javascript" charset="utf-8"> $(document).ready(function() { var oTable = $('#datatables').dataTable({ "aoColumnDefs": [{ "aTargets": [0], "bVisible": false }], "sDom": "Rlfrtip", "bDeferRender": true, "sPaginationType": "bootstrap", "sScrollY": "1000px", "sScrollX": "400px", "bProcessing": true, "bServerSide": true, "sServerMethod": "GET", "sAjaxSource": '<?php echo base_url(); ?>main/getTable', "iDisplayLength": 50, "aLengthMenu": [[10, 25, 50], [10, 25, 50]], "aaSorting": [[0, 'desc']] }); $("#datatables tbody tr").live('click',function(){ var aData = $('#datatables').dataTable().fnGetData(this); alert(aData[0]); }); }); </script> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | <script type="text/javascript" charset="utf-8"> $(document).ready(function() { var oTable = $('#datatables').dataTable({ "aoColumnDefs": [{ "aTargets": [0], "bVisible": false }], "sDom": "Rlfrtip", "bDeferRender": true, "sPaginationType": "bootstrap", "sScrollY": "1000px", "sScrollX": "400px", "bProcessing": true, "bServerSide": true, "sServerMethod": "GET", "sAjaxSource": '<?php echo base_url(); ?>main/getTable', "iDisplayLength": 50, "aLengthMenu": [[10, 25, 50], [10, 25, 50]], "aaSorting": [[0, 'desc']] }); $("#datatables tbody tr").live('click',function(){ var aData = $('#datatables').dataTable().fnGetData(this); window.location = 'http://../'+aData[0]; }); }); </script> |
SPOILEROm spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.
[ Bericht 0% gewijzigd door pascal08 op 26-02-2013 19:30:09 ]
Volgens mij zeg je in je edit precies wat ik al vermoedde, maar dan begrijp ik nog niet waarom er custom filters mogelijk zijn waarbij je bepaalde waardes onder de ingegeven waarde kan wegfilteren.quote:Op dinsdag 26 februari 2013 21:03 schreef Tijn het volgende:
Ik begrijp niet helemaal waar die PHP-code goed voor is. Het idee is toch dat je alle data aan je frontend geeft en dan het filteren/sorteren in de client doet mbv DataTables? Het is toch niet de bedoeling dat het kiezen van een andere sortering of filteren zorgt voor een trip naar de server, of wel?
[edit] Ik snap op zich ook wel dat je niet 12000 rijen aan je frontend wil geven als je alleen de top 10 wil laten zien. Maar als je toch client/server-communicatie wil bij het filteren en sorteren, wat is dan het voordeel van zoiets als DataTables? Waarom laat je dan niet alle filtering/sortering doen door je backend en stop je met een Ajax-call gewoon nieuwe data in de tabel?
Het voordeel van datatables is zo te zien dat het een functieset levert die ditsoort dingen een stuk makkelijker maakt. Maar zoals wel vaker geldt voor frameworks en plugins, als je de basis al niet onder de knie hebt, ga je het framework ook niet begrijpen. Beginnen bij het begin dus.quote:Op woensdag 27 februari 2013 09:50 schreef pascal08 het volgende:
Op zich is dat natuurlijk heel makkelijk te bewerkstelligen met een simpele HTML tabel en een query in m'n PHP-code. En wat ik me nu besef is dat ik DataTables dus eigenlijk niet nodig heb. Wat ik me steeds wel afvraag is wat het grote voordeel dan is van DataTables. In eerste instantie dacht ik dat het zonder DataTables veel te intensief zou worden voor de server, maar in het aantal requests dat de server aankan heb ik me al vaker vergist.
Als je dit gemaakt hebt, zou je daarna vrij eenvoudig je tabel kunnen updaten dmv AJAX. Dan heb je niet voor elke filter/sorteeractie een page request. Maar wat je sowieso moet maken is de backend.quote:[b]Op woensdag 27 februari 2013 09:50 schreef pascal08 het volgende:[/b
Ik zit op dit moment niet achter mijn computer, maar zodra ik thuis ben ga ik het eens proberen zoals KomtTijd zei; gewoon met pure HTML en PHP.
Ja, dat doe ik ook. Wat vooral handig is van de validator is om slordigheidjes te spotten die je anders niet waren opgevallen. En voor nieuwe ontwikkelaars is het een toegankelijkere manier om de standaard te leren kennen dan alle documenten te gaan zitten doorlezen.quote:Op woensdag 27 februari 2013 11:37 schreef Catch22- het volgende:
validator smellidator
ik gebruik liever een deprecated target='_blank' dan een vunzig JSje
Ja, dit is denk ik wat ik wil. Ik ben bijna thuis en ik kan niet wachten om aan de slag te gaan. Bij een page request wordt de hele pagina opnieuw geladen, wat intensiever is dan alleen een Ajax-call, toch?quote:Op woensdag 27 februari 2013 11:13 schreef Tijn het volgende:
[..]
Als je dit gemaakt hebt, zou je daarna vrij eenvoudig je tabel kunnen updaten dmv AJAX. Dan heb je niet voor elke filter/sorteeractie een page request. Maar wat je sowieso moet maken is de backend.
Nauwelijks. Misschien als je een hele zware pagina hebt met veel dynamische content, maar vrijwel iedere website wisselt vloeiend van pagina zonder dat je het als gebruiker "ziet".quote:Op woensdag 27 februari 2013 15:00 schreef pascal08 het volgende:
[..]
Ja, dit is denk ik wat ik wil. Ik ben bijna thuis en ik kan niet wachten om aan de slag te gaan. Bij een page request wordt de hele pagina opnieuw geladen, wat intensiever is dan alleen een Ajax-call, toch?
Maar dan alsnog is het beter om gewoon Ajax te gebruiken in plaats van complete pagereloads toch?quote:Op woensdag 27 februari 2013 15:08 schreef KomtTijd... het volgende:
[..]
Nauwelijks. Misschien als je een hele zware pagina hebt met veel dynamische content, maar vrijwel iedere website wisselt vloeiend van pagina zonder dat je het als gebruiker "ziet".
quote:Op woensdag 27 februari 2013 08:51 schreef KomtTijd... het volgende:
In aanvulling op Tijn zou ik je alleszins aanraden dit eerst eens te bouwen met klassieke technieken. Gewoon een simpele query maken met een limit en order by statement en html outputten.
Oké, dat heb ik gedaan.quote:
SPOILEROm spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.
Het is moeilijk om een soort algemeen advies te geven over wanneer je een Ajax request zou moeten doen en wanneer niet, maar ik denk dat in dit specifieke geval het wel gebruiksvriendelijker is om je table met Ajax te updaten dan elke keer de hele pagina opnieuw te laden.quote:Op woensdag 27 februari 2013 15:11 schreef pascal08 het volgende:
[..]
Maar dan alsnog is het beter om gewoon Ajax te gebruiken in plaats van complete pagereloads toch?
Ik snap precies wat je bedoelt hoor. Ik heb nu door dat ik iets te snel ging, door gelijk een ingewikkeld framework te pakken zonder eerst de basis te begrijpen.quote:Op woensdag 27 februari 2013 16:47 schreef Tijn het volgende:
[..]
Het is moeilijk om een soort algemeen advies te geven over wanneer je een Ajax request zou moeten doen en wanneer niet, maar ik denk dat in dit specifieke geval het wel gebruiksvriendelijker is om je table met Ajax te updaten dan elke keer de hele pagina opnieuw te laden.
Maar dat wil niet zeggen dat het geen goed idee is om, zoals KomtTijd voorstelt, eerst een "ouderwetse" variant te bouwen zonder Javascript-fratsen. Die basis heb je sowieso nodig namelijk en het is ook belangrijk om iets dat je toch al een beetje ingewikkeld vindt niet nog ingewikkelder te maken dan nodig. Dat bedoelde ik ook eerder met het opdelen van je probleem in kleinere problemen. Je moet niet proberen alles in 1 keer op te lossen, maar stap voor stap af te vinken wat er gedaan moet worden.
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |