table visible maken, andere tables hiden

Pagina: 1
Acties:

  • Galoptic
  • Registratie: Februari 2001
  • Laatst online: 11:55
Ik heb een aantal knopjes waarmee ik tabellen laat verschijnen en verdwijnen. Nu wil ik dat, als ik tabelEen oproep, dat dan tabelTwee t/m tabelZes verdwijnen. Met m'n huidige code laat-ie alle tables die geopend zijn, ook staan. Ze verdwijnen pas als ik nogmaals op het betreffende knopje klik.

header
<SCRIPT type=text/javascript>
function menuHandle(argSubMenu) {
if (document.getElementById(argSubMenu).style.display == 'block') {
document.getElementById(argSubMenu).style.display = 'none';
} else {
document.getElementById(argSubMenu).style.display = 'block';
}
}
</SCRIPT>
voorbeeld knopje
<A HREF="javascript:%20menuHandle('menu1sub');">knopje1</A>
een van de tabellen die showt / hide
<TABLE STYLE="DISPLAY: none" ID=menu1sub WIDTH=100% BORDER=0 CELLPADDING=0 CELLSPACING=0 CLASS=SContent>
<TR>
<TD><H2>tabelEen</H2>

</TD></TR>
</TABLE>
Wat moet ik doen met m'n code in de HREF en in het script zelf om te zorgen, dat als ik menu1sub open, menu2sub t/m menu6sub automatisch verdwijnen? Ik kom er niet uit...

  • André
  • Registratie: Maart 2002
  • Laatst online: 13:14

André

Analytics dude

In een array bijhouden welke openstaan en welke dicht. Dan kun je met een lusje door die array heen om de open items te sluiten...

  • Galoptic
  • Registratie: Februari 2001
  • Laatst online: 11:55
Op donderdag 18 juli 2002 14:01 schreef Yogho het volgende:
In een array bijhouden welke openstaan en welke dicht. Dan kun je met een lusje door die array heen om de open items te sluiten...
Als ik het van mezelf al niet knap vond dat ik pasgeleden ergens een onClick vervangen heb door een onMouseover, dan had ik het graag gedaan wat je hierboven zegt. Maar mijn programmeerkennis is momentaal dermate bedroevend dat ik al maar met moeite snap wat een array is :+

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 29-08 19:47

Bosmonster

*zucht*

Op donderdag 18 juli 2002 14:03 schreef Galoptic het volgende:

[..]

Als ik het van mezelf al niet knap vond dat ik pasgeleden ergens een onClick vervangen heb door een onMouseover, dan had ik het graag gedaan wat je hierboven zegt. Maar mijn programmeerkennis is momentaal dermate bedroevend dat ik al maar met moeite snap wat een array is :+
Tja.. willen en kunnen.. een groot verschil ;) Pak er eens wat Javascript tutorials bij zou ik zeggen :)

  • maikel
  • Registratie: Januari 2001
  • Laatst online: 13:04
Je javascript-code kijkt alleen naar het item waarvan je het ID meegeeft en niet naar de overige items (tabellen).
Je moet dus ook nog eens door je tabellen loopen.
bijv.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<SCRIPT type=text/javascript>
function menuHandle(argSubMenu)
{
  for (i=0; i < 5; i++)
  {
    var itemName = "menu" + i + "sub";
    var displayValue = "none";
    if (itemName == argSubMenu)
    {
    displayValue = "block";
    }

    document.getElementById(itemName).style.display = displayValue)
  }
}
</SCRIPT>

  • Galoptic
  • Registratie: Februari 2001
  • Laatst online: 11:55
Ik heb 't even geprobeerd met de code hierboven van Maikel, maar ik heb het idee dat die code nog niet compleet is. Of ik zou iets met hetgeen in in m'n HREF heb staan, moeten doen...

Maar ik snap het idee al wel ja: heb je menu(cijfer)sub, blokkeer dan alle andere cijfers... Dit is al in de goede richting... Thanx... Iemand een idee of m'n HREF nu nog klopt?

  • maikel
  • Registratie: Januari 2001
  • Laatst online: 13:04
Op vrijdag 19 juli 2002 10:10 schreef Galoptic het volgende:
Ik heb 't even geprobeerd met de code hierboven van Maikel, maar ik heb het idee dat die code nog niet compleet is. Of ik zou iets met hetgeen in in m'n HREF heb staan, moeten doen...

Maar ik snap het idee al wel ja: heb je menu(cijfer)sub, blokkeer dan alle andere cijfers... Dit is al in de goede richting... Thanx... Iemand een idee of m'n HREF nu nog klopt?
Volgens mij zou die toch moeten werken nu ?
Je moet misschien i laten lopen van 1 t/m 6. Of je id's laten beginnen op 0 ipv 1. Anders komen de namen niet overeen en krijg je een error. :)

  • Galoptic
  • Registratie: Februari 2001
  • Laatst online: 11:55
Ik heb m'n code even HE-LE-MAAL gestript en dan blijft er het volgende over... (Waarbij ik nog steeds een foutmelding krijg :'()
<html>
<head>
<title></title>

<SCRIPT type=text/javascript>
function menuHandle(argSubMenu)
{
for (i=0; i < 3; i++)
{
var itemName = "menu" + i + "sub";
var displayValue = "none";
if (itemName == argSubMenu)
{
displayValue = "block";
}
document.getElementById(itemName).style.display = displayValue
}
}
</SCRIPT>


</head>
<body>


<TABLE STYLE="DISPLAY: none" ID=menu1sub WIDTH=100% BORDER=0 CELLPADDING=0 CELLSPACING=0 CLASS=SContent>
<TR>
<TD>
<H2>onderwerp 1</H2>
CONTENT
</TD></TR>
</TABLE>
<TABLE STYLE="DISPLAY: none" ID=menu2sub WIDTH=100% BORDER=0 CELLPADDING=0 CELLSPACING=0 CLASS=SContent>
<TR>
<TD>
<H2>onderwerp 2</H2>
CONTENT
</TD></TR>
</TABLE>
<TABLE STYLE="DISPLAY: none" ID=menu3sub WIDTH=100% BORDER=0 CELLPADDING=0 CELLSPACING=0 CLASS=SContent>
<TR>
<TD>
<H2>onderwerp 3</H2>
CONTENT
</TD></TR>
</TABLE>

<HR><BR><BR>

<A HREF="javascript:%20menuHandle('menu1sub')">laat zien 1</A><BR><BR>
<A HREF="javascript:%20menuHandle('menu2sub')">laat zien 1</A><BR><BR>
<A HREF="javascript:%20menuHandle('menu3sub')">laat zien 1</A><BR><BR>

</CENTER>
</body>
</html>

  • Galoptic
  • Registratie: Februari 2001
  • Laatst online: 11:55
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
&lt;SCRIPT type=text/javascript&gt;
function menuHandle(argSubMenu)
{
  for (i=1; i&lt;13; i++)
  {
    var itemname = &quot;menu&quot; + i + &quot;sub&quot;;
    var displayV = &quot;none&quot;;
    var orig_Display = document.getElementById(itemname).style.display;
    if (itemname == argSubMenu &amp;&amp; orig_Display == &quot;none&quot;) displayV = &quot;block&quot;; else displayV = &quot;none&quot;;
    document.getElementById(itemname).style.display = displayV;
  }
}
&lt;/SCRIPT&gt;

Zo, met de hulp van een HIO-nerd alhier even de code herschreven: hij werkt perfect nu *D.

  • André
  • Registratie: Maart 2002
  • Laatst online: 13:14

André

Analytics dude

Hij is niet x-browser, dus echte nerd-status verdient hij niet.

  • maikel
  • Registratie: Januari 2001
  • Laatst online: 13:04
Op donderdag 25 juli 2002 12:05 schreef Galoptic het volgende:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
&lt;SCRIPT type=text/javascript&gt;
function menuHandle(argSubMenu)
{
  for (i=1; i&lt;13; i++)
  {
    var itemname = &quot;menu&quot; + i + &quot;sub&quot;;
    var displayV = &quot;none&quot;;
    var orig_Display = document.getElementById(itemname).style.display;
    if (itemname == argSubMenu &amp;&amp; orig_Display == &quot;none&quot;) displayV = &quot;block&quot;; else displayV = &quot;none&quot;;
    document.getElementById(itemname).style.display = displayV;
  }
}
&lt;/SCRIPT&gt;

Zo, met de hulp van een HIO-nerd alhier even de code herschreven: hij werkt perfect nu *D.
Wat is nou het grote verschil met mijn code dan ?? :?

Verwijderd

let ff hierop :
var i moet gerelateerd zijn aan het aantal tabellen, anders komt er een foutmelding.
for (i=1; i<4; i++)

Bovendien: druk je twee keer op hetzelfde
dan verdwijnt de tabel weer.
Is dat de bedoeling ?
Pagina: 1