Dat is wat ik ook wil doen... Met $_GET ophalen.quote:Op zaterdag 21 juni 2014 20:50 schreef zoem het volgende:
Waarom zou je de url fragment (#) hier gebruiken? Gewoon in de query (?a=b&c=d) stoppen, dan maak je je het jezelf een stuk makkelijker. Dan kun je de informatie namelijk gewoon ophalen middels $_GET
Hm.. De javascript wordt pas uitgevoerd als je pagina direct opent. Wanneer je doorklikt vanuit de lijst met users wordt er niets getoond...quote:Op zaterdag 21 juni 2014 20:42 schreef zarGon het volgende:
Voor nu zo opgelost:
[ code verwijderd ]
.
Als je enkel de tab opnieuw laad en niet de hele pagina moet de code die je wilt gebruiken al gebruikt zijn. Dmv de onclick kan je het uitvoeren.quote:Op zaterdag 21 juni 2014 20:56 schreef zarGon het volgende:
[..]
Hm.. De javascript wordt pas uitgevoerd als je pagina direct opent. Wanneer je doorklikt vanuit de lijst met users wordt er niets getoond...
.
Maar hoe doe ik het als het laden al geweest is?quote:Op zaterdag 21 juni 2014 20:57 schreef Nattekat het volgende:
[..]
Als je enkel de tab opnieuw laad en niet de hele pagina moet de code die je wilt gebruiken al gebruikt zijn. Dmv de onclick kan je het uitvoeren.
Die code moet al op de pagina aanwezig zijn als je hem laad. Dus de pagina zonder ***&x=y.quote:Op zaterdag 21 juni 2014 20:59 schreef zarGon het volgende:
[..]
Maar hoe doe ik het als het laden al geweest is?
Welke code zou jij gebruiken?
Ik had de code ook al naar de hoofdpagina verhuisd. Waar de rest van de javascript staat. Dat werkte niet. . Of nou ja, het is mij niet gelukt iig.quote:Op zaterdag 21 juni 2014 21:00 schreef Nattekat het volgende:
[..]
Die code moet al op de pagina aanwezig zijn als je hem laad. Dus de pagina zonder ***&x=y.
De onclick is de enige call die je krijgt. Die moet je gebruiken.quote:Op zaterdag 21 juni 2014 21:01 schreef zarGon het volgende:
[..]
Ik had de code ook al naar de hoofdpagina verhuisd. Waar de rest van de javascript staat. Dat werkte niet. . Of nou ja, het is mij niet gelukt iig.
De vraag was of er javascript gecalld kon worden, de context verder ontgaat me...quote:Op zaterdag 21 juni 2014 21:11 schreef zoem het volgende:
Waarom zitten jullie nou zo onwijs moeilijk te doen met javascript en onclick Maak er hyperlinks van met het type en id in de query (?type=a&id=1). Ajax maakt het veel complexer dan nodig.
...quote:Op zaterdag 21 juni 2014 21:11 schreef zoem het volgende:
Waarom zitten jullie nou zo onwijs moeilijk te doen met javascript en onclick Maak er hyperlinks van met het type en id in de query (?type=a&id=1). Ajax maakt het veel complexer dan nodig.
Hoe bedoel je precies? Wil je beide parameters meegeven aan het script? Het kan ook dmv #type=user&id=2, echter heb je dan het script nodig dat ik ook voor de dagcijfers gebruik, heb ik hier eerder gepost. De code welke ik voor je had geschreven kun je hier niet voor gebruiken omdat die maar één parameter ondersteund.quote:Op zaterdag 21 juni 2014 20:31 schreef zarGon het volgende:
[..]
Ik heb #user=2 verandert naar #id=2. URL wordt hierdoor /?type=user#id=2.
Ik wil op de pagina waar de grafieken getoond worden ook gegevens van de user zelf tonen. Dat wil ik doen door een div toe te voegen, en alleen te tonen wanneer er een user is geselecteerd. $("#userinfo").show(); binnen selectUser().
Probleem is dat ik de geselecteerde user niet uit de URL kan halen. Met #id=2 lukt het niet, met &id=2 lukt me dat wel. Ik heb die ID nodig om gegevens uit de database te trekken.
Is het mogelijk om de #id=2 te wijzigen naar &id=2? Of weet jij een andere manier om de ID te halen als de URL /type=user#id=2 is?
http://fok.zevkiselim.nl/crew2.0/.quote:Op zaterdag 21 juni 2014 21:26 schreef bondage het volgende:
[..]
Hoe bedoel je precies? Wil je beide parameters meegeven aan het script? Het kan ook dmv #type=user&id=2, echter heb je dan het script nodig dat ik ook voor de dagcijfers gebruik, heb ik hier eerder gepost. De code welke ik voor je had geschreven kun je hier niet voor gebruiken omdat die maar één parameter ondersteund.
Heb je trouwens een voorbeeld hoe het op dit moment is? Misschien is er wel een betere manier om dit te fixen.
Ik denk dat het inderdaad beter is om de hele pagina gewoon te vernieuwen door bij de link naar de user dit van de url te maken: http://fok.zevkiselim.nl/crew2.0/?type=user&id=308148 Je krijgt via de GET array twee waarden terug, namelijk: user en id. Vervolgens de hele pagina teruggeven met de gegevens van de geselecteerde user. De JSON gegevens voor het verwerken van de grafieken kun je in een js var zetten en doorgeven aan de functie voor het verwerken van deze grafieken.quote:Op zaterdag 21 juni 2014 21:31 schreef zarGon het volgende:
[..]
http://fok.zevkiselim.nl/crew2.0/.
Ik was net bezig, daarom zag je het niet werken. 1) selecteer een user en zie de pagina; 2) open de pagina direct.
Eens, daarom had ik het in de eerste instantie ook via de hash gedaan, de code was al op die manier ingericht aangezien er losse data moest worden opgehaald. Het kan natuurlijk nog steeds via die hash, echter heb je dan een wat geavanceerder javascript nodig. Ik zal zo ff wat posten, mijn dagcijfersscript gebruikt ook zo'n functie voor het verwerken van alle parameters na de hash.quote:Op zaterdag 21 juni 2014 21:39 schreef Nattekat het volgende:
Een postrequest icm een halve pagina laden in plaats van alles is toch een stuk mooier
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 | <script> $(document).ready(function() { if(document.location.hash) { handleLocationHash(document.location.hash); } }); handleLocationHash = function(location_hash) { if(location_hash.length > 0) { var hash = location_hash.substr(1); var hash_parts = hash.split('&'); var post_vars = {}; for(var a in hash_parts) { var hash_sub_parts = hash_parts[a].split('=', 2); if(hash_sub_parts.length === 2) { post_vars[hash_sub_parts[0]] = hash_sub_parts[1] } } $("#userselect").hide(); $("#userinfo").show(); drawItems(post_vars); } }; </script> |
Deze code vervangt het onderstaande? (In zijn geheel?)quote:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | <script type="text/javascript"> $(document).ready(function() { if(document.location.hash) { var hash_str_parts = document.location.hash.replace('#','').split('='); if(hash_str_parts[0] == 'id') { selectUser(hash_str_parts[1]); } } }); function selectUser(user_id) { document.location.hash = 'id='+user_id; $("#userselect").hide(); $("#userinfo").show(); drawItems(user_id); } </script> |
Kun je een voorbeeld hiervan geven? .quote:Je moet dan in de functie drawItems de post_vars variable als POST waarden meegeven in de aanroep van het script welke de JSON data ophaalt.
Ik heb mijn vorige post aangepast. Waar vind ik die drawItems functie precies?quote:Op zaterdag 21 juni 2014 22:14 schreef zarGon het volgende:
[..]
Deze code vervangt het onderstaande? (In zijn geheel?)
[ code verwijderd ]
Ik zie het selectUser() gedeelte nergens terugkomen.
[..]
Kun je een voorbeeld hiervan geven? .
Bedankt trouwens dat je code post!
In js/googlecharts.js: http://fok.zevkiselim.nl/crew2.0/js/googlecharts.js.quote:Op zaterdag 21 juni 2014 22:16 schreef bondage het volgende:
[..]
Ik heb mijn vorige post aangepast. Waar vind ik die drawItems functie precies?
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 30 31 32 33 34 35 36 | <script> $(document).ready(function() { if(document.location.hash) { handleLocationHash(document.location.hash); } }); handleLocationHash = function(location_hash) { if(location_hash.length > 0) { var hash = location_hash.substr(1); var hash_parts = hash.split('&'); var post_vars = {}; for(var a in hash_parts) { var hash_sub_parts = hash_parts[a].split('=', 2); if(hash_sub_parts.length === 2) { post_vars[hash_sub_parts[0]] = hash_sub_parts[1] } } if(post_vars.id != undefined && post_vars.type != undefined) { if(post_vars.type == 'user') { selectUser(post_vars.id); }else If(post_vars.type == 'forum') { // code voor verwerken forum. } } } }; function selectUser(user_id) { $("#userselect").hide(); $("#userinfo").show(); drawItems(user_id); } </script> |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |