Rene: Fehlermeldung bei neuem Fenster

HAllo!
Ich habe ein Problem. Folgender Script verursacht die Fehlermeldung "Nicht abgeschlossene Zeichenfolgekonstante". Vielleicht kann mir jemand sagen, warum.

Danke!
René

Hier das Script:
<script language="JavaScript" type="text/javascript">
function neuesFenster1() {
Fenster =
window.open("/cgi-bin/fenster.pl?anzuege.csv&herren&he26.jpg&Hugo+Boss+Anzug+in+56&Hugo+Boss+Herren+Anzug§+Grösse+56§+Farbe+taubengrau§+Jacke-+Länge+84+cm§+Armlänge+66+cm§+Bauchumfang+120+cm§+drei+Aussentaschen§+vier+Innentaschen§+Schulterpolster§+Bundfaltenhose+-Länge+115+cm§+Schrittlänge+86+cm§+zwei+Taschen+vorne§+eine+Gesässtasche§+sehr+guter+Zustand&101.75
", "Detailansicht","toolbar=no,locationbar=no,menubar=no,width=600,height=400,dependent=yes");
Fenster.focus();
}
</script>

  1. Hi, René

    In deiner Funktion gibt es Leerzeichen, Zeilenumbrüche, usw. Du solltest auf solche Dinge achten. Übrigens hat Mozilla eine nette Funktion: Wenn etwas mal nicht so funktioniert, wie gewünscht, gib javascript: ein und sieh' dir die Fehler an.

    So sollte es keine Probleme geben:

    <script language="JavaScript" type="text/javascript">
    function neuesFenster1() {
    Fenster = window.open("/cgi-bin/fenster.pl?anzuege.csv&herren&he26.jpg&Hugo+Boss+Anzug+in+56&Hugo+Boss+Herren+Anzug§+Grösse+56§+Farbe+taubengrau§+Jacke+Länge+84+cm§+Armlänge+66+cm§+Bauchumfang+120+cm§+drei+Aussentaschen§+vier+Innentaschen§+Schulterpolster§+Bundfaltenhose+Länge+115+cm§+Schrittlänge+86+cm§+zwei+Taschen+vorne§+eine+Gesässtasche§+sehr+guter+Zustand&101.75","Detailansicht","toolbar=no,locationbar=no,menubar=no,width=600,height=400,dependent=yes");
    Fenster.focus();
    }
    </script>

    Dir ist bewusst, dass PopUps bei _sehr_ vielen Besuchern nicht funktionieren?

    LG Orlando

    1. HAllo!

      In deiner Funktion gibt es Leerzeichen, Zeilenumbrüche, usw. Du solltest auf solche Dinge achten. Übrigens hat Mozilla eine nette Funktion: Wenn etwas mal nicht so funktioniert, wie gewünscht, gib javascript: ein und sieh' dir die Fehler an.

      Danke für den Tip. Die Leerzeichen kamen durch das Kopieren, im Original sind keine Zeilenumbrüche . Das ganze wird durch ein CGI-Script generiert. Vor der Ausgabe werden alle Leerzeichen in + umgewandelt. Es sind auch keine Zeilenumbrüche angegeben. Hängt das vielleicht mit der Länge des zu übergebenen Codes zusammen?

      Dir ist bewusst, dass PopUps bei _sehr_ vielen Besuchern nicht funktionieren?

      Leider ja, aber mit fällt nichts anderes ein. Ich habe eine Artikelauflistung mit Bildern. Wenn der Kunde auf das Bild klickt, dann soll das Bild größer und die Artikelbeschreibung erscheinen. Aber ich möchte auch nicht, daß dann der ganze Frame geändert wird. Hast du vielleicht noch eine Idee?

      LG Orlando

      Danke!
      René

      1. Hi,

        In deiner Funktion gibt es Leerzeichen, Zeilenumbrüche, usw.

        das hat mit der Länge nichts zu tun, aber wenn es auch im Original nicht funktioniert hat, muss wohl ein Fehler vorhanden gewesen sein. Wie auch immer, Mozilla ist hier eine große Hilfe.

        Wenn der Kunde auf das Bild klickt, dann soll das Bild größer und die Artikelbeschreibung erscheinen. Aber ich möchte auch nicht, daß dann der ganze Frame geändert wird. Hast du vielleicht noch eine Idee?

        Iframes wären eine Alternative. Auf PopUps würde ich wo immer es geht verzichten. Sie nerven viele Besucher und sind aus diesem Grund sehr oft deaktiviert. Bei Iframes fällt auch das Problem weg, dass PopUps nur mit aktivem Javascript funktionieren.

        http://selfhtml.teamone.de/html/frames/eingebettete.htm

        LG Orlando

      2. Hängt das vielleicht mit der Länge des zu übergebenen Codes zusammen?

        solange die URL kürzer als ~2000 Zeichen ist solltest du keine Probleme bekommen.

        Was sollen eigentlich die "§" in der URL? Sonderzeichen sind da doch nicht erlaubt. (Oder inzwischen doch?)

        By
        Reinhard

        1. Hallo!

          Was sollen eigentlich die "§" in der URL? Sonderzeichen sind da doch nicht erlaubt. (Oder inzwischen doch?)

          Keine Ahnung. Absoluter Neuling bei JavaScript. Ich habe das Zeichen jetzt durch ein * ersetzt. Ich mache dies, weil ich so die Leerzeichen wegbekomme. Wenn der Text wieder angezeigt wird (über ein Perlscript) werden die Zeichen wieder umgewandelt, so daß diese verschwinden.

          Also ich versuche folgendes:
          Ein Perl-Script generiert aus einer Datei eine Seite, in der dieser JavaScript vorkommt, der auch automatisch zusammengestellt wird. Beim anklicken eines Bildes öffnet sich ein Fenster (dafür das Script) mit dem Bild in groß und der Artikelbeschreibung. Dieses neue Fenster wird ebenfalls wieder aus einem Perl-Script heraus generiert. Ist nicht das gelbe vom Ei, aber bisher mein bester Lösungsansatz.

          Bis dann!
          Rene

  2. <script language="JavaScript" type="text/javascript">
    function neuesFenster1() {
    Fenster =
    window.open("/cgi-bin/fenster.pl?anzuege.csv&herren&he26.jpg&Hugo+Boss+Anzug+in+56&Hugo+Boss+Herren+Anzug§+Grösse+56§+Farbe+taubengrau§+Jacke-+Länge+84+cm§+Armlänge+66+cm§+Bauchumfang+120+cm§+drei+Aussentaschen§+vier+Innentaschen§+Schulterpolster§+Bundfaltenhose+-Länge+115+cm§+Schrittlänge+86+cm§+zwei+Taschen+vorne§+eine+Gesässtasche§+sehr+guter+Zustand&101.75
    ", "Detailansicht","toolbar=no,locationbar=no,menubar=no,width=600,height=400,dependent=yes");
    Fenster.focus();
    }

    Hallo,

    hinter der 101.75 muss der Umbruch weg, das Leerzeichen vor "Detailansicht" vorsichtshalber auch.

    Gruß: kaspar