Claudia Straile: Div-Bereich ein- und ausblenden

Hallo,
ich möchte in meiner Tabelle mit Hilfe des Div-Tags Zeilen ein- und ausblenden.
Leider funktioniert das weder im IE noch im Netscape. Im Netscape habe ich noch folgenden Effekt: sobald ein Div-Tag vorkommt, sehe ich Textfelder oder meine Comboboxen nicht mehr.

Die Funktionen zum ein- und ausblenden:

function einblenden(e)
{
  if (document.layers)
    document.layers[e].visibility="show";
  else
    document.all(e).style.visibility="visible";
}

function ausblenden(e)
{
  if (document.layers)
    document.layers[e].visibility="hide";
  else
    document.all(e).style.visibility="hidden";
}

Meine Tabelle sieht folgendermaßen aus:

<form id="form1" name="form1" action="mailto:info@jrk-kv-ludwigsburg.de" method=post enctype="text/plain">

<table width=80% align=center valign=middle border=0>
  <tr>
    <td align=left valign=middle colspan=2>
      <font class=ueberschrift2>Formular zum Anmelden</font>
    </td>
  </tr>
 ...
<div id="DivOrtsverein" style="position:absolute">
  <tr>
    <td align=left valign=middle >
      <font class=textarea>
        Ortsverein: <font color=red>*</font>
      </FONT>
    </td>
    <td align=left valign=middle >
      <font class=textarea>
        <input type=text id="Ortsverein" name="Ortsverein">
      </FONT>
    </td>
  </tr>
</div>
...
</table>

Die Funktion z.B. zum Ausblenden rufe ich so auf:
ausblenden("DivOrtsverein");

Wäre echt super, wenn Ihr mir helfen könntet.

Viele Grüße von Claudia

  1. Hallo,

    ich möchte in meiner Tabelle mit Hilfe des Div-Tags Zeilen ein- und ausblenden.

    die Tabelle soll doch den Seitenaufbau bestimmen ?
    Dann wären relativ positionierte div's geeigneter,
    oder m.E. noch besser <span>, das kann
    für Netscape 4x bei Tabellen besser sein.
    Die <span> würde ich nicht mit der Tabelle
    verschachteln, also <td><span> texttext </span></td>.

    Ansonsten müsstest Du auf die Tabelle verzichten,
    und mit der Einbindung in <form> mag es auch nochmal
    schwieriger werden.

    Grüsse

    Cyx23

    1. die Tabelle soll doch den Seitenaufbau bestimmen ?
      Dann wären relativ positionierte div's geeigneter,

      Ich dachte man darf nur die absolute Positionierung verwenden, wenn es auch im Netscape klappen soll?

      Grüße Claudia

      1. Hallo,

        Ich dachte man darf nur die absolute Positionierung verwenden, wenn es auch im Netscape klappen soll?

        warum, wie kommst Du darauf ?

        probier mal {visibility:visible;position:relative;}, dann kannst Du
        die visibility auf hidden setzen.

        Grüsse

        Cyx23

        1. warum, wie kommst Du darauf ?

          Habe ich in einem Buch gelesen.

          probier mal {visibility:visible;position:relative;}, dann kannst Du
          die visibility auf hidden setzen.

          Das Problem ist, dass es trotzdem nicht funktioniert.

          Könntest Du Dir mal folgende Datei anschauen:
          http://jrk-kv-ludwigsburg.de/test/anmeldung.htm

          Dort siehst Du warum ich das brauche. Ich übergebe der Datei einen Namen, je nach dem wähle ich den richtigen Eintrag in der COmbobox aus und möchte nun die entsprechenden Zeilen der Tabelle ein oder ausblenden.

          Mit relativer Positionierung kann ich die Textfelder nicht so schön untereinander anordnen.

          Vielleicht gibt es doch eine Möglichkeit? :-)

          Viele Grüße von Claudia

          1. Hallo Claudia,

            Habe ich in einem Buch gelesen.

            welches Buch wenn ich fragen darf ? würde mich mal interessieren.

            Mit dem relativen div funktioniert es in Tabellen wie ich vorher
            schon gepostet habe wenn die Tabellenstruktur erhalten bleibt,
            also nicht verschachtelt. So klappt es auch für Netscape4 :
            <td align=left valign=middle>
            <div id="DivOrtsverein" style="position:relative;visibility:hidden">
            <font class=textarea>        Ortsverein: <font color=red>*</font>
            </FONT></div></td>
            Nur dein script muss noch ergänzt werden für getElemnetbyId-
            Browser N6, Opera; und das document.all().style ist evtl.
            nicht ganz richtig.

            Für die rechte Seite wäre dann ein zweites div nötig, aber ich
            vermute dass es Schwierigkeiten gibt das Formular teilweise
            zu verstecken (auch aus Sicherheitsgründen).
            Könntest du mal im Archiv recherchieren, hat bestimmt
            schonmal jemand versucht.

            Du könntest aber z.B. das Feld passend vorbelegen mit bestimmtem
            Text oder vielleicht dem Feld ein (muss so nicht funktionieren,
            ist nur prinzipiell gemeint) onfocus="self.blur()" verpassen
            oder per docuemnt.forms[0].meinfeldzwei.focus() oder so
            (ggf. korrigieren) zum nächsten springen usw.

            ( Falls der Sever "ssi" erlaubt könntest du das vielleicht mit
            includedateien zusammensetzen als Alternative)

            Grüsse

            Cyx23

            1. welches Buch wenn ich fragen darf ? würde mich mal interessieren.

              Hattest Recht, es stand nur drin, dass man eine Positionierung machen muß, aber nicht, dass es eine absolute sein muß. Habe mich wahrscheinlich an das Beispiel gehalten.
              http://www.teamone.de/selfhtml/tfbe.htm#a7

              <td align=left valign=middle>
              <div id="DivOrtsverein" style="position:relative;visibility:hidden">
              <font class=textarea>        Ortsverein: <font color=red>*</font>
              </FONT></div></td>

              Jetzt weiß ich was ich falsch gemacht habe. Bei mir habe ich den Div- Bereich immer um das <tr> gemacht, dann ging es nicht.

              Für die rechte Seite wäre dann ein zweites div nötig, aber ich
              vermute dass es Schwierigkeiten gibt das Formular teilweise
              zu verstecken (auch aus Sicherheitsgründen).
              Könntest du mal im Archiv recherchieren, hat bestimmt
              schonmal jemand versucht.

              Das ist nicht so entscheidend. Es soll vielmehr nur bestimmte Felder angezeigt werden, damit nur die richtigen ausgefüllt werden.

              ( Falls der Sever "ssi" erlaubt könntest du das vielleicht mit
              includedateien zusammensetzen als Alternative)

              Sorry, habe keine Ahnung wie das geht.

              Trotzdem vielen Dank.
              Viele Grüße von Claudia

              1. Hallo Claudia,

                ( Falls der Sever "ssi" erlaubt könntest du das vielleicht mit
                includedateien zusammensetzen als Alternative)
                Sorry, habe keine Ahnung wie das geht.

                zu SSI schau doch mal hier: http://httpd.apache.org/docs/howto/ssi.html.html

                Viele Gruesse
                 Kess