Michael Baumgart: Anführungszeichen in Stringvariablen

Hallo!

Ich möchte einer Variable einen String zuweisen, in dem Anführungszeichen vorkommen. Diese Anführungszeichen sollen beim Ausgeben der Variable natürlich wieder als Anführungszeichen auftauchen.

z.B.

var vor = "<a href="mailto";
  var nach = "">email</a>";
  var mail = michi-b@gmx.de
  document.write(vor + mail + nach);

Was muss ich beachten

  1. Hallo auch!

    Wo sind denn alle hier? Ist irgendwo was interessantes los, von dem ich nix weiss ;-) ??

    Ich möchte einer Variable einen String zuweisen, in dem Anführungszeichen vorkommen. Diese Anführungszeichen sollen beim Ausgeben der Variable natürlich wieder als Anführungszeichen auftauchen.

    z.B.

    var vor = "<a href="mailto";
      var nach = "">email</a>";
      var mail = michi-b@gmx.de
      document.write(vor + mail + nach);

    so gehts nicht! Da fehlt der Doppelpunkt nach dem mailto ;-)

    Du hast die Möglichkeit, doppelte und einfache Anführungszeichen so einzusetzen, dass die einen die Stringvariable ersetzen, und die anderen innerhalb des Strings vorkommen! Verständlich ?

    var vor = "<a href='mailto:";
    var nach = "'>email</a>";
    var mail = michi-b@gmx.de
    document.write(vor + mail + nach);

    oder natürlich alles ins document.write einbauen:

    var mail = michi-b@gmx.de
    document.write("<a href='mailto:"+mail+"'>email</a>");

    Bzw. kannst du mit dem Backslash Doppelte Anführungszeichen maskieren, soll heissen ein " gibt im Source des Dokuments ein "

    Also für dich heisst das:

    var mail = michi-b@gmx.de
    document.write("<a href="mailto:"+mail+"">email</a>");

    liebe Grüsse
    Bernhard

    1. var vor = "<a href='mailto:";
      var nach = "'>email</a>";
      var mail = michi-b@gmx.de
      document.write(vor + mail + nach);

      So viel ich weiß, müßte das einfache Anführungszeichen aber auch geschlossen werden, also gehört da auch ein Backslash hin!

      1. var vor = "<a href='mailto:";
        var nach = "'>email</a>";
        var mail = michi-b@gmx.de
        document.write(vor + mail + nach);

        So viel ich weiß, müßte das einfache Anführungszeichen aber auch geschlossen werden, also gehört da auch ein Backslash hin!

        Nein, da es innerhalb von ".." steht, wird es als normales zeichen angesehen. Folgende Konstrukte sind gültig:

        beispiel = "dies ist "ein" beispiel";
        beispiel = "dies ist 'ein' beispiel";
        beispiel = 'dies ist 'ein' beispiel';
        beispiel = 'dies ist "ein" beispiel';

        Gruß
                    Marcus

      2. Hi!

        var vor = "<a href='mailto:";

        So viel ich weiß, müßte das einfache Anführungszeichen aber auch geschlossen werden, also gehört da auch ein Backslash hin!

        Meiner Erfahrung nach wird das als stinknormales Zeichen ausgegeben.

        schöne Grüsse
        Bernhard

      3. Hi!

        var vor = "<a href='mailto:";

        So viel ich weiß, müßte das einfache Anführungszeichen aber auch geschlossen werden, also gehört da auch ein Backslash hin!

        Meiner Erfahrung nach wird das als stinknormales Zeichen ausgegeben.

        schöne Grüsse
        Bernhard

    2. Vielen Dank!

      Das hat mir erstmal weitergeholfen.

      Michael

  2. Ein Anführungszeichen kannst du innerhalb von "..." mit " setzen oder das ' verwenden, natürlich nur paarweise das eine oder das andere.

    var vor = "<a href="mailto:";  // !!!!Doppelpunkt hinter mailto!!!!
    var nach = "">email</a>";
    var mail = "michi-b@gmx.de"; // !!!!Anführungszeichen und Semikolon vergessen!!!!
    document.write(vor + mail + nach);

    Was muss ich beachten

    Das ist einfach beantwortet: Lies mal die SelfHTML oder ein JavaScript-Handbuch !

    Marcus

  3. var vor = "<a href="mailto";
      var nach = "">email</a>";
      var mail = michi-b@gmx.de
      document.write(vor + mail + nach);

    Was muss ich beachten

    Da Du hier Strings als Variablen anlegst, müssen die Strings in Anführungszeichen stehen, in doppelten oder einfachen ist egal.
    Am besten fügst Du vor jedes Anführungszeichen, das innerhalb des Strings stehen soll (was also zum String dazugehört), noch ein Backslash ein:

    var vor = "<a href="mailto";
    var nach = "">email</a>";
    var mail = "michi-b@gmx.de"
    document.write(vor + mail + nach);