3. Anführungszeichen?



  • Gibt es so etwas wie ein 3. Anführungszeichen? Leider komme ich selten mit " und ' alleine aus, wie in folgendem HTML-Code zu sehen:

    <a href='javascript:document.getElementsByClassName("adr")[0].innerHTML += "<a href=[hier müsste das 3.Anführungszeichen hin]>Text</a>";'>
    

    In diesem Fall könnte ich die Anführungszeichen noch Maskieren, was aber dann in php nicht mehr ginge, wenn ich nun 4 oder mehr Anführungszeichen hätte.
    Deswegen wäre es schön wenn es noch ein 3.Anführungszeichen gäbe, oder so etwas wie Anführungszeichen oben und unten, um ganz klar für den Kompiler/Interpreter zu definieren, hier fängt das Anführungszeichen an, hier endet es!



  • Du hast hier einen Java-Script String in einem HTML Attribut-String.

    Also musst du ggf. 2x escapen.

    Wenn du, wie in deinem Beispiel, den HTML Attribut-String mit '' begrenzt, dann musst du im HTML Attribut-String auch nur ' "escapen", und zwar mit ' .

    Wenn du den HTML Attribut-String mit "" begrenzen würdest, dann müsstest du " escapen, und zwar mit &quot; bzw. " .

    Unabhängig vom Delimiter musst du dann noch < und & escapen (mit &lt; bzw. &amp; ).

    Dann kommt der Java-Script String. Dieser ist mit "" begrenzt, d.h. du müsstest da drinnen " escapen. Und zwar mit \" .

    D.h. folgendes sollte funktionieren:

    <a href='javascript:document.getElementsByClassName("adr")[0].innerHTML += "<a href=\"dingsbums.html\">Text</a>";'>
    

    Und ... ‘andere’ „Anführungszeichen” gibt es natürlich schon, bloss dass man die nicht verwenden kann um Strings in Java-Script/HTML/... zu begrenzen. Und das ist auch gut so 🙂



  • hustbaer schrieb:

    <a href='javascript:document.getElementsByClassName("adr")[0].innerHTML += "<a href=\"dingsbums.html\">Text</a>";'>
    

    Danke erstmal für die Antwort 🙂 .

    Das meinte ich ja eben mit maskieren. ^^



  • HTML und Javascript mischen, ist grausam, unlesbar, schlecht debugbar und vieles mehr...

    Ich empfehle:
    http://en.wikipedia.org/wiki/Unobtrusive_JavaScript

    Damit hätte sich Deine Frage auch gar nicht gestellt.



  • lolhehe schrieb:

    HTML und Javascript mischen, ist grausam, unlesbar, schlecht debugbar und vieles mehr...

    Runtime DOM-Gefummel ist auch grausam und unübersichtlich.
    Nur auf andere Art und Weise grausam.



  • hustbaer schrieb:

    lolhehe schrieb:

    HTML und Javascript mischen, ist grausam, unlesbar, schlecht debugbar und vieles mehr...

    Runtime DOM-Gefummel ist auch grausam und unübersichtlich.

    der satz ergibt im kontext keinen sinn.


  • Mod

    hustbaer schrieb:

    lolhehe schrieb:

    HTML und Javascript mischen, ist grausam, unlesbar, schlecht debugbar und vieles mehr...

    Runtime DOM-Gefummel ist auch grausam und unübersichtlich.
    Nur auf andere Art und Weise grausam.

    Nope.
    Gefummel ist natürlich immer schlecht - aber sauberes ändern des DOM Trees ist The-Way-To-Go®.

    Ich will eine Warnung anzeigen wenn ein Button geklickt wird aber ein Textfeld leer ist, geht das in etwa so:

    $(document).ready(function() {
      $('#button').click(function() {
        if(!$('#textfeld').val()) {
           $('#error').text("Du musst das Textfeld ausfüllen").fadeIn();
        }
      }
    }
    


  • Dieser Thread wurde von Moderator/in rüdiger aus dem Forum Rund um die Programmierung in das Forum Webzeugs verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.


Anmelden zum Antworten