onclick tabelregel van kleur laten veranderen

Overzicht

Sponsored by: Vacatures door Monsterboard

Sandra

Sandra

08/03/2006 03:01:00
Anchor link
Hi,

Ik heb een tabel op mijn pagina staan in het bovenste frame. Hierin laat ik gegevens zien (voornaam, achternaam) uit mijn database. Nu wil ik in het onderste frame detailgegevens laten zien van van de persoon die in het bovenste frame is aangeklikt. Op dit moment heb ik van elke waarde in de tabel (dus voor en achternaam) een linkje gemaakt. Wat ik eigelijk wil is dat de hele regel van de tabel (voor het oog) geselecteerd wordt en van kleur veranderd op het moment dat er ergens op de regel geklikt wordt. Dat je dus een blauwe balk ziet voor de geselecteerde regel. Op het moment dat je op een andere regelklikt moet die blauw worden en de voorgaande weer gewoon terug naar de originele kleur.

Feitelijk moet de bgcolor dus veranderen bij onclick maar dan voor de hele regel. Iemand een idee hoe ik dit voor elkaar krijg?

Groetjes uit Australie!
 
PHP hulp

PHP hulp

16/04/2024 21:37:02
 
PHP erik

PHP erik

08/03/2006 04:04:00
Anchor link
Even denken hoor, ik zag deze vraag een paar dagen terug langskomen, maar ik weet niet of dat op deze site was.

Ik geloof dat je de td's allemaal apart moet kleuren. Dus de td's allemaal een naam met ID meegeven en aan de hand van een functie(ID) de kleuren veranderen.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<script>
function ChangeIt(id) {
   document.getElementById('eerste'+id).bgcolor='#iets';
document.getElementById('tweede'+id).bgcolor='#iets';
document.getElementById('derde'+id).bgcolor='#iets';
}
</script>

en dan:

<table>
<tr><td id="eerste1"></td><td id="tweede1"></td></tr>
<tr><td id="eerste2"></td><td id="tweede2"></td></tr>
<tr><td id="eerste3"></td><td id="tweede3"></td></tr>
</table>

<iets onClick="ChangeIt(2);">


Groeten uit Zuid-Holland
Gewijzigd op 08/03/2006 04:04:00 door PHP erik
 
Sandra

Sandra

08/03/2006 07:17:00
Anchor link
Helaas werkt het nog niet helemaal, dus ik heb meer hulp nodig. Ik heb het even versimpeld om het te testen en 2 dingen geprobeerd. Ten eerste:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?
<table>
<
tr id="test" bgcolor="blue" onClick="ChangeIt(1)"><td>cel2</td>
    <
td>cel2</td></tr>
<
/table>

<
script>
function
ChangeIt(id) {
   document.getElementById("test2").fillcolor="red";
}

</script>

<p><!--[if gte vml 1]><v:oval id="test2"
 o:spid="_x0000_s1025" style='position:absolute;left:36.75pt;top:79.5pt;
 width:42pt;height:26.25pt;z-index:1'/><![endif]--><![if !vml]><span
style='mso-ignore:vglayout;position:absolute;z-index:1;left:48px;top:105px;
width:58px;height:37px'><img width=58 height=37
src="new_page_190_files/image001.gif" v:shapes="test2"></span><![endif]></p>
?>


Hierbij kleurt het ovaaltje rood als ik op de tabelrij klik. Als ik echter hetvolgende doe:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?
<table>
<
tr id="test" bgcolor="blue" onClick="ChangeIt(1)"><td>cel2</td>
    <
td>cel2</td></tr>
<
/table>

<
script>
function
ChangeIt(id) {
   document.getElementById("test").bgcolor="red";
}

</script>

?>


Dan gebeurd er niks. Het lijkt dus wel alsof ik mijn tabelrij geen "id" kan geven. Terwijl dit wel moet kunnen.....Wat doe ik verkeerd?

(ow ja natuurlijk zonder de
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? en ?>
die heb ik hier even ingezet om de code in een blokje te krijgen)
Gewijzigd op 08/03/2006 07:20:00 door Sandra
 
Terence Hersbach

Terence Hersbach

08/03/2006 09:53:00
Anchor link
kan je niet de hele tabel een id geven? ik heb zelf vrij weinig verstand van javascript...

je kan trouwens ook de tags [ c o d e ] en [ / c o d e ] gebruiken om zo'n blokje te krijgen

edit:
viel in de herhaling
Gewijzigd op 08/03/2006 09:56:00 door Terence Hersbach
 
Jan Koehoorn

Jan Koehoorn

08/03/2006 10:45:00
Anchor link
Probeer het zo eens?

<table>
<tr id="test" bgcolor="blue" onClick="ChangeIt(this)"><td>cel2</td>
<td>cel2</td></tr>
</table>

<script>
function ChangeIt(obj) {
obj.bgColor = "#f00";
}
</script>
?>
 
Jelmer -

Jelmer -

08/03/2006 11:07:00
Anchor link
Is het tegenwoordig niet obj.style.backgroundColor = "#f00";?
 
Sandra

Sandra

08/03/2006 12:27:00
Anchor link
De oplossing van Jan werkt! Bedankt!

Nu wil ik echter nog dat wanneer er een andere regel geselecteerd wordt de eerder geselecteerde weer terug springt naar zijn originele kleur.

bijv:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<table id="tabel">
<tr id="test" bgcolor="red" onClick="ChangeIt(this)"><td>cel1</td>
<td>cel2</td></tr>
<tr id="klok" bgcolor="red" onClick="ChangeIt(this)"><td>cel1</td>
<td>cel2</td></tr>
<tr id="klepel" bgcolor="red" onClick="ChangeIt(this)"><td>cel1</td>
<td>cel2</td></tr>
</table>

<script>
function ChangeIt(obj) {
obj.bgColor = "#235CDB";
test.bgColor = "red";
}
</script>


Werk niet... Iemand een idee
Gewijzigd op 08/03/2006 12:43:00 door Sandra
 
Frits van Leeuwen

Frits van Leeuwen

21/04/2018 12:57:04
Anchor link
Dit lijkt mij het makkelijkste op te lossen met CSS
 
Obelix Idefix

Obelix Idefix

21/04/2018 13:00:33
Anchor link
@Frits: ik mag hopen dat Sandra ondertussen een oplossing heeft gevonden; dit topic is 12 jaar oud.......
 
- Ariën  -
Beheerder

- Ariën -

21/04/2018 13:07:19
Anchor link
Kijk anders voortaan even naar de datum!
Deze doe ik dicht!
 
 

Dit topic is gesloten.



Overzicht

 
 

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.