Virgin: Objekt erwartet... *aargh*

Hallo,

ich möchte dynamisch ein HTML-Dokument verändern. Beim drücken eines Buttons sollen bestimmte Teile der Seite verschwinden. Dummerweise krieg ich es nicht mal gebacken, dass meine Funktion überhaupt aufgerufen wird.. kann mir jemand helfen?

</head>
<script language="text/JavaScript">
<!--
function testfunc(){
alert('Test');
// var anzahl = document.getElementById("options").childNodes.length;
// for(var i = 1; i = Anzahl; i++)
//     document.getElementById("options").removeChild(i);
 }
//-->
</script>
<body>
<p><a href="javascript:testfunc()">TEST</a></p>
<table>
  <tr>
    <td id="options">
      <form name="form1" method="post" action="">
        <input type="radio" name="radiobutton" value="radiobutton">
        <input type="radio" name="radiobutton" value="radiobutton">
      </form>
    </td>
  </tr>
</table>
</body>
</html>

1. Warum bekomme ich die Fehlermeldung "Objekt erwartet"?
2. Sind die auskommentierten Zeilen so korrekt (Es soll alles im TD-Tag verschwinden)?

Vielen Dank im voraus.

Schöne Grüße
Virgin

  1. Hallo,

    probier esrtmal

    <script type="text/javascript">

    oder

    <script language="javascript">
    wobei diese version abgelöst wurde...

    kein Kuddelmuddel

    Odium

  2. Hallo,

    <script language="text/JavaScript">

    Das heißt: <script language="JavaScript">

    Und. Dann klappts auch mit der Funktion.

    Gruss
       MichaelB

    PS: Ganz korrekterweise eigentlich:
    <script language="JavaScript" type="text/javascript"> aber das language-Attribut muss auf jeden Fall korrekt angegeben sein

  3. Hallo,

    </head>

    Das Script gehört zwischen <head> und </head>

    <script language="text/JavaScript">

    Entweder <script language="javascript">
    oder <script type="text/javascript"> (besser)

    <!--
    function testfunc(){
    alert('Test');
    // var anzahl = document.getElementById("options").childNodes.length;
    // for(var i = 1; i = Anzahl; i++)

    for (i=1; i<=Anzahl; i++)

    //     document.getElementById("options").removeChild(i);
    }
    //-->
    </script>
    <body>
    <p><a href="javascript:testfunc()">TEST</a></p>

    ...

    Gruß, Jan

    1. Hallo,

      </head>

      Das Script gehört zwischen <head> und </head>

      nicht unbedingt...

      <script language="text/JavaScript">

      Entweder <script language="javascript">
      oder <script type="text/javascript"> (besser)

      <!--
      function testfunc(){
      alert('Test');
      // var anzahl = document.getElementById("options").childNodes.length;
      // for(var i = 1; i = Anzahl; i++)

      for (i=1; i<=Anzahl; i++)

      entweder i<= Anzahl - 1
      oder i<Anzahl

      //     document.getElementById("options").removeChild(i);
      }
      //-->
      </script>
      <body>
      <p><a href="javascript:testfunc()">TEST</a></p>
      ...

      Gruß, Jan

      Odium

      1. Hallo,

        Das Script gehört zwischen <head> und </head>
        nicht unbedingt...

        wirklich? Aber doch wohl mit Sicherheit nicht zwischen </head> und <body>?

        for (i=1; i<=Anzahl; i++)
        entweder i<= Anzahl - 1
        oder i<Anzahl

        Da hast du wohl Recht ;-)

        Gruß, Jan

        1. Hallo,

          Das Script gehört zwischen <head> und </head>
          nicht unbedingt...

          wirklich? Aber doch wohl mit Sicherheit nicht zwischen </head> und <body>?

          ein script kannman überall einbinden, nur solte es eben html-tags nicht "verdecken"... z.B. statt Onload ein script am ende der seite, damit auch sichergestellt ist, das elemente auf die das script sich bezieht auch geladen wurden...

          for (i=1; i<=Anzahl; i++)
          entweder i<= Anzahl - 1
          oder i<Anzahl

          normalerweise müßte ich auch als startwert i=0 schreiben,
          da die länge/anzahl z.B. 10 beträgt, aber das erste element mit 0, das letzte element mit 9 angesprochen wird...

          Da hast du wohl Recht ;-)

          Gruß, Jan

          Odium