Frederic D.: Fehlermeldung nach Aufruf einer Funktion

Hi

ich habe folgendes Problem. Ich möchte ein Script per Funktion über einen onclick button ausführen. Das Script funktioniert. Wenn ich es aber als Funktion aufrufe kommt die folgende Fehlermeldung:
Es ist ein Laufzeitfehler aufgetreten
Zeile: 0
Fehler: Objekt erwartet

hier das Script:

<body>
<script>
function test()
{
window.onerror=null;
var down;
function faketake(percent1){
if(percent1 < 100){
   percent1++;
   window.status="stelle Verbindung her: "+percent1+"% komplett";
   fid1=window.setTimeout("faketake("+percent1+")",50)
} else {
      fid1=window.setTimeout("fakeformat(0)",50);
}
}
function fakeformat(percent){
  if(percent < 100){
    percent++;
    window.status=" Übertrage Daten: "+percent+"% komplett";
    fid=window.setTimeout("fakeformat("+percent+")",150); // 900

} else {
  alert("Daten erfolgreich übertragen!");
    }
}
window.setTimeout('faketake(-1)',200);
}
// -->
</script>
<p> </p>

<p> </p>

<form method="POST">
    <p align="center"><input type="button" onclick="test()" name="B1"
    value="Abschicken"></p>
</form>
</body>

ich hoffe jemand kann helfen.

Gruß
Fred

  1. Hi

    ich habe folgendes Problem. Ich möchte ein Script per Funktion über einen onclick button ausführen. Das Script funktioniert. Wenn ich es aber als Funktion aufrufe kommt die folgende Fehlermeldung:

    mögliche Ursache: onclick sucht im HEADER nach dem script, aber du hast es in den BODY gepackt, und du hast nicht gesagt, ob es sich um ein Javascript-script handelt  -  und außerdem beendest du den script-Bereich mit //-->, hast ihn aber nicht mit <!-- eingeleitet. Zumindest Netscape mag sowas nicht, der IE übersieht solche scriptfehler manchmal.

    Christoph S.

    1. Hallo Christoph

      mögliche Ursache: onclick sucht im HEADER nach dem script, aber du hast es in den BODY gepackt, und du hast nicht gesagt, ob es sich um ein Javascript-script handelt  -  und außerdem beendest du den script-Bereich mit //-->, hast ihn aber nicht mit <!-- eingeleitet. Zumindest Netscape mag sowas nicht, der IE übersieht solche scriptfehler manchmal.

      Hast Du weitere Information dazu, vielleicht sogar einen Link, wo ich das nachschlagen kann? Oder kannst Du mir mal ein Beispielskript posten. Ja ja, der liebe NN, aber man muß ja schließlich auch noch dafür entwickeln ;-)

      Gruß AlexBausW

      1. mögliche Ursache: onclick sucht im HEADER nach dem script,
        aber du hast es in den BODY gepackt, und du hast nicht gesagt, ob
        es sich um ein Javascript-script handelt  -  und außerdem
        beendest du den script-Bereich mit //-->, hast ihn aber nicht mit
        <!-- eingeleitet. Zumindest Netscape mag sowas nicht, der IE
        übersieht solche scriptfehler manchmal.

        Hast Du weitere Information dazu, vielleicht sogar einen Link, wo
        ich das nachschlagen kann?

        <!--  --> verbirgt etwas (z. B. einen Kommentar) vor der
        "HTML-Maschine" und

        // verbirgt hingegen etwas (z. B. einen Kommentar) vor der "JavaScript-Maschine".

        Der NN interpretiert alles zwischen <script> und </script> als
        JavaScript, also auch das -->, in

        <script>
            <!--
              ...
            -->
          </script>

        was dann zwangslaeufig einen Syntax-Fehler produziert, obwohl das ei-
        gentlich _nicht_ falsch ist, was die "JavaScript-Maschine" da macht.

        Mit //--> wird das --> auch vor der "JavaScript-Maschine" des NN ver-
        borgen und alle sind gluecklich ...

        Enjoy IT,
        Andreas

    2. Hi

      ich habe folgendes Problem. Ich möchte ein Script per Funktion über einen onclick button ausführen. Das Script funktioniert. Wenn ich es aber als Funktion aufrufe kommt die folgende Fehlermeldung:

      mögliche Ursache: onclick sucht im HEADER nach dem script, aber du hast es in den BODY gepackt, und du hast nicht gesagt, ob es sich um ein Javascript-script handelt  -  und außerdem beendest du den script-Bereich mit //-->, hast ihn aber nicht mit <!-- eingeleitet. Zumindest Netscape mag sowas nicht, der IE übersieht solche scriptfehler manchmal.

      Christoph S.

      hi nochmal!
      also es handelt sich um ein java-script, und funktioniert auch nicht wenns im HEADER steht, auch nicht wenn mit <!-- eingeleitet.

      trotzdem danke

      Fred

  2. Hallo!

    Es ist ein Laufzeitfehler aufgetreten
    Zeile: 0
    Fehler: Objekt erwartet

    Ja ja, eine typische IE-Fehlermeldung. So richtig aussagekraeftig. Nimm besser Netscape zum entwickeln, der weiss was er will und sagt es Dir auch:
        JavaScript Error:
        file:/T/files/tests/html/end-script-comment.html, line 26:
        faketake is not defined.
    So lautet der Fehler bei mir (wird nach 0.2 sec von dem setTimeout ausgeloest), allerdings erst nachdem ich die Zeile window.onerror=null auskommentiert habe, dann mit dieser Zeile werden natuerlich keine Fehler angezeigt.

    <body>
    <script>
    function test()
    {
    /* window.onerror=null; */

    Nimm die besser weg.

    var down;
    function faketake(percent1){
        
    Bevor Du eine neue Funktion anfaengst, mach doch bitte erstmal die alte zu. Logisch, dass faketest nicht definert ist, auf diese Weise wird da nichts. Funktionen lassen sich nicht ineinander verschachteln. Wie kommst Du auf sowas, hast Du vorher Pascal gemacht (dort geht das naemlich)?

    [...]
    window.setTimeout('faketake(-1)',200);
    }
    // -->
    </script>

    Was diesen Kommentar am Ende angeht, den Du ja gar niemals aufgemacht hast, so sieht das zwar nicht besonders gut aus, aber es ist voellig valide und der Netsi kommt auch damit klar.

    So long

    1. Bevor Du eine neue Funktion anfaengst, mach doch bitte erstmal die alte zu. Logisch, dass faketest nicht definert ist, auf diese Weise wird da nichts. Funktionen lassen sich nicht ineinander verschachteln. Wie kommst Du auf sowas, hast Du vorher Pascal gemacht (dort geht das naemlich)?

      In der Schule habe ich ein wenig Pascal gemacht.

      Wenn das verschachteln der Funktionen hier nicht funktioniert, wie kan ich dann das Script per "Knopfdruck" dann doch ausführen?

      Fred