table zoeken van tr

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Softwareontwikkelaar Cleopatra

Functieomschrijving: De directie Verkeer en Openbare ruimte van de gemeente Amsterdam beschikt over een softwareapplicatie, "Cleopatra", waarmee geautomatiseerde handhaving plaatsvindt (op basis van kentekenherkenning) van bepaalde gebieden waarin toegangseisen worden gesteld aan het verkeer. Voorbeelden ervan zijn de milieuzones, de zone zwaar verkeer, handhaving van bromen snorfietser op het fietspad en autoluwe gebieden. Voor de doorontwikkeling en uitbreiding ervan zijn gespecialiseerde softwareontwikkelaars nodig die helpen bij het programmeren van de handhavingsmodules voor nieuwe gebieden en het verbeteren en bijwerken van de bestaande onderdelen van de softwareapplicatie.De opdracht bestaat uit: het programmeren van de diverse modules;het tijdens demo's tonen van de

Bekijk vacature »

Softwareontwikkelaar Cleopatra

Functieomschrijving Voor de gemeente Amsterdam zijn wij op zoek naar een softwareontwikkelaar Cleopatra. De directie Verkeer en Openbare ruimte van de gemeente Amsterdam beschikt over een softwareapplicatie, "Cleopatra", waarmee geautomatiseerde handhaving plaatsvindt (op basis van kentekenherkenning) van bepaalde gebieden waarin toegangseisen worden gesteld aan het verkeer. Voorbeelden ervan zijn de milieuzones, de zone zwaar verkeer, handhaving van brom- en snorfietser op het fietspad en autoluwe gebieden. Voor de doorontwikkeling en uitbreiding ervan zijn gespecialiseerde softwareontwikkelaars nodig die helpen bij het programmeren van de handhavingsmodules voor nieuwe gebieden en het verbeteren en bijwerken van de bestaande onderdelen van de softwareapplicatie. Functie

Bekijk vacature »

Jan R

Jan R

19/03/2024 19:32:23
Quote Anchor link
Hoi

Ik zoek in een script de table van een tr.
Omgekeerd genoeg voorbeelden op internet :) maar van tr ==> table niet :(
Het beste dat ik vond was offsetParent maar ik ben niet zeker of dit wel de juiste en correcte methode is.

Kan iemand bevestigen of in de juiste richting wijzen?

Jan
 
PHP hulp

PHP hulp

27/04/2024 14:36:23
 
- Ariën  -
Beheerder

- Ariën -

19/03/2024 20:01:03
Quote Anchor link
Heb je een voorbeeld van je HTML-code?
En heb je dus een table in een tr staan?

Klinkt nostalgisch als ik eerlijk mag zeggen :P
 
Ad Fundum

Ad Fundum

20/03/2024 07:32:05
Quote Anchor link
HTML heeft een boomstructuur, je kunt altijd de onderliggende node opvragen met parentNode.

Wanneer de HTML op je pagina de juiste vorm heeft, is <tr> altijd een 'kind' van <tbody>, <thead> of <tfoot>, en die zijn op hun beurt altijd 'kind' van <table>. Dus als je de <tr> in een javascript variabele hebt via getElementById(), dan heb je met e.parentNode.parentNode de <table>.

Is je document niet conform W3C, dan kan je er ook een loopje van maken en elke keer parentNode opvragen, totdat je <table> vindt of document.body, via instanceof:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
var e = document.getElementById('mijn-tr');
if (e.parentNode instanceof HTMLTableElement) {}
else if (e.parentNode instanceof HTMLBodyElement) {}
 
Jan R

Jan R

20/03/2024 13:59:34
Quote Anchor link
- Ariën - op 19/03/2024 20:01:03:
Heb je een voorbeeld van je HTML-code?
En heb je dus een table in een tr staan?

Klinkt nostalgisch als ik eerlijk mag zeggen :P

't is omgekeerd :)
Ik zoek bovenliggende tabel. Nog nooit tabellen in tabellen gestoken behalve eens om te testen in de jaren 80 :)

Ad Fundum op 20/03/2024 07:32:05:
HTML heeft een boomstructuur, je kunt altijd de onderliggende node opvragen met parentNode.

Wanneer de HTML op je pagina de juiste vorm heeft, is <tr> altijd een 'kind' van <tbody>, <thead> of <tfoot>, en die zijn op hun beurt altijd 'kind' van <table>. Dus als je de <tr> in een javascript variabele hebt via getElementById(), dan heb je met e.parentNode.parentNode de <table>.

Is je document niet conform W3C, dan kan je er ook een loopje van maken en elke keer parentNode opvragen, totdat je <table> vindt of document.body, via instanceof:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
var e = document.getElementById('mijn-tr');
if (e.parentNode instanceof HTMLTableElement) {}
else if (e.parentNode instanceof HTMLBodyElement) {}

Dit is niet altijd correct. tBody is niet verplicht te gebruiken en in dat geval is er maar 1 X parentNode nodig.

Ik heb echter volgende JS functie gemaakt
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
function getFirstParentOfType(ctrl, tagType) {
    while (ctrl && ctrl.tagName!=tagType.toUpperCase()) {
        ctrl = ctrl.parentElement;
    }
    return ctrl;
}



Werkende pagina: https://www.janr.be/schaak/sc_post-gent/?page=lastgamesall
De/mijn bedoeling is als je klikt op een datum (standaard de laatste datum met ingaven) je meer of minder data te zien krijgt. Er is wel een limit op de db van 100. Ik denk er nog over om die te verhogen of volledig weg te laten. Het maximum is toch 12 X 11 X 5 (12spelers X 11 tegenstanders X maximum 5 actieve toernooien) = 660. Op php EN mysql niveau is dat toch niet zo veel.

Jan

PS bedankt voor de hulp.
 
Ad Fundum

Ad Fundum

21/03/2024 07:50:00
Quote Anchor link
Jan R op 20/03/2024 13:59:34:
Dit is niet altijd correct. tBody is niet verplicht te gebruiken en in dat geval is er maar 1 X parentNode nodig.

Je hebt helemaal gelijk.

Komt omdat ik het zelf altijd 'te' goed wil doen, als het even kan gebruik ik ook <colgroup> in elke tabel die ik maak. Maar dat is geen vereiste, ook al bracht ik het zo.

En fijn dat het is gelukt.
 
Ivo P

Ivo P

21/03/2024 08:33:37
Quote Anchor link
ik gebruik meestal jQuery (of jQuery is sowieso al beschikbaar omdat ik in de meeste gevallen voortbouw op iets dat al staat).

Dan kun je closest() gebruiken.

In dit geval zou het zijn:
indien je reageert op een event bij deze tr en "this" dus staat voor de betreffende tr.

var theTable = $(this).closest('table');

reageer je op iets anders, maar weet je dat je nu iets wilt doen met de parent van tr die id=abc heeft dan wordt het

var theTable = $('#abc').closest('table');

Dit heeft als voordeel dat je je niet hoeft te bekommeren om de exacte opbouw van de table in kwestie: zijn er thead of tbody aanwezig? Maar als je dat goed uitgeteld hebt, kan over anderhalf jaar iemand de opbouw van de table alsnog aanpassen en valt alles om.

En nu is dat nog beperkt, omdat het om een table en een TR daarin gaat, maar met bijvoorbeeld een DIV kun je zo maar 10 levels ertussen duwen en wil je niet gaan tellen en hopen dat er niet (dynamisch) een div tussen komt of verdwijnt.

Nadeel is wel dat je voor alleen het vinden van de juiste parent-table misschien niet bij elke pagina-aanroep heel de jquery lib. wilt opnemen in je source.
Maar gebruik je het al, dan zou ik dat ook hier toepassen.
 
Jan R

Jan R

21/03/2024 09:11:42
Quote Anchor link
Ivo P op 21/03/2024 08:33:37:
ik gebruik meestal jQuery (of jQuery is sowieso al beschikbaar omdat ik in de meeste gevallen voortbouw op iets dat al staat).


Om het feit dat het bijna niet te debuggen is heb ik een hekel aan jquery. Toch bedankt. En zoals je ziet/leest is de oplossing in gewoon js ook niet zo veel code :).
 
Ivo P

Ivo P

21/03/2024 09:52:20
Quote Anchor link
Met console.log() kun je op zich wel aardig goed volgen wat er gebeurt.
Zelfs kun je (in Firefox) als je met de muis over die tekst in de console log gaat, zien welk element dat dan is in de pagina weergave.

Maar als je zeker weet dat het de parent of grandparent is, dan kun je volstaan met de standaard javascript regel.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.