Mssmar: escape für ID

Hallo,

kann mir bitte Jemand helfen bei dem kleinen Problem hier helfe?:

  
document.write('<li><a href="javascript:displayQuestion(0,"frage2");">weiter</a></li>');  

Ich muss eigentlich nur den ID-Namen von: frage2 escapen, aber ich schaffe es einfach nicht.
Das ist ein Anfänger-Fehler, aber irgendwie, bekomme ich es nicht hin
Firefox-Fehle-Konsole gibt folgendes aus:

Fehler: syntax error
Quelldatei: javascript:displayQuestion(0,
Zeile: 1, Spalte: 17
Quelltext:
displayQuestion(0,

Danke und Gruß
Messmar

  1. Hallo,

    kann mir bitte Jemand helfen bei dem kleinen Problem hier helfe?:

    document.write('<li><a href="javascript:displayQuestion(0,"frage2");">weiter</a></li>');

      
    Der Fehler liegt nicht beim Escapen sondern bei dem erzeugten HTML-Code.  
      
    ~~~javascript
      
    document.write('<li><a href="javascript:displayQuestion(0,\'frage2\');">weiter</a></li>');  
    
    

    Gruß

    --
    Nichts auf der Welt ist so gerecht verteilt wie der Verstand. Denn jedermann ist überzeugt, dass er genug davon habe.
    René Descartes
    1. Hallo,

      Der Fehler liegt nicht beim Escapen sondern bei dem erzeugten HTML-Code.

      Vielen Dank. So funktioniert auch und die ist eleganter.

      Danke und Gruß
      Messmar

    2. Grütze .. äh ... Grüße!

      document.write('<li><a href="javascript:displayQuestion(0,'frage2');">weiter</a></li>');

        
      ich persönlich finde Konstrukte wie `<a href="javascript:...">`{:.language-html} furchtbar :(  
        
      `document.write('<li onclick="displayQuestion(0,\'frage2\');">weiter</li>');`{:.language-javascript}  
        
      funktioniert genauso. Dann noch mit etwas CSS das Aussehen bestimmen ...  
        
      Cü  
      Kai
      
      -- 
      [Der vertuschte Gefahrstoff: Dihydrogenmonoxid](http://www.dhmo.de/fakten.html)  
        
      ie:{ fl:( br:< va:) ls:? fo:| rl:? n4:° ss:{ de:] js:| ch:? mo:| zu:|
      
      1. Hallo,

        document.write('<li onclick="displayQuestion(0,\'frage2\');">weiter</li>');

        funktioniert genauso.

        Nee. Beim a-Element ist immer das Verhalten der Aktivierbarkeit offensichtlich, unabhängig vom CSS und vom Ausgabemedium. Man kann es mit der Tastatur anspringen und aktivieren. Besser wäre höchstens ein Button. Mag paradox klingen, aber wenn man schon eine Anwendung mit obligatorischem JavaScript baut, dann bitte diese Regeln der Barrierefreiheit beachten: Elemente mit »Verhalten« möglichst mit Link- und Formular-Elementen umsetzen, die in mehr Fällen bedient werden können. (Ist natürlich auch nicht immer sinnvoll.)

        Mathias

        1. Grütze .. äh ... Grüße!

          Nee. Beim a-Element ist immer das Verhalten der Aktivierbarkeit offensichtlich, unabhängig vom CSS und vom Ausgabemedium. Man kann es mit der Tastatur anspringen und aktivieren.

          Hmm ok, das Problem mit dem Anspringen habe ich nicht bedacht. Normalerweise muß ich das auch nicht, lasse mich lieber anspringen ;) [ist auch besser so, denn wenn ich jemanden anspringe endet das für diese Person im Ganzkörpergips]


          Kai

          --
          Der vertuschte Gefahrstoff: Dihydrogenmonoxid
          ie:{ fl:( br:< va:) ls:? fo:| rl:? n4:° ss:{ de:] js:| ch:? mo:| zu:|
  2. Stop ;-))

    so geht auch:

      
    document.write('<li><a href=javascript:displayQuestion(0,"frage2");>weiter</a></li>');  
    
    

    Aber für einen anderen eleganteren Vorschlag wäre ich dankbar.

    Gruß
    Messmar