Michael W.: document.write

folgendes script ist simpel und funzt:
<script type="text/javascript">
<!--

var a = prompt("1","1")
var b = prompt("2","2");
var c = prompt("3","3")
var d = prompt("4","4")
;document.write("<b>" + a + "" + b + "" + c + "" + d + "</b>");

//-->
</script>
aber was passiert jetzt wenn ich einen dialog wiedergeben will
;document.write("<b>" + a + "" + b + " " "hallo", sagte er " " + c + "" + d + "</b>");
Das "hallo" erzeugt logischer weise ein fehler im script !!!
wie kann ich das jetzt umgehen ?

  1. Hallo,

    Du kannst die Anführungszeichen in den Anführungszeichen mit Backslashes davor als Strings ausgeben:

    document.write("<b>" + a + "" + b + " " "hallo", sagte er " " + c + "" + d + "</b>");

    Gruß,
    Fade

    folgendes script ist simpel und funzt:
    <script type="text/javascript">
    <!--

    var a = prompt("1","1")
    var b = prompt("2","2");
    var c = prompt("3","3")
    var d = prompt("4","4")
    ;document.write("<b>" + a + "" + b + "" + c + "" + d + "</b>");

    //-->
    </script>
    aber was passiert jetzt wenn ich einen dialog wiedergeben will
    ;document.write("<b>" + a + "" + b + " " "hallo", sagte er " " + c + "" + d + "</b>");
    Das "hallo" erzeugt logischer weise ein fehler im script !!!
    wie kann ich das jetzt umgehen ?

    1. Danke soweit,
      aber was jetzt: (ich schreibe ein html generator für formmailer)
      document.write("<b><form ACTION="" + a + "" METHOD="POST"><input type="hidden" name="id" value="" + b + "" + c + "" + d + "</b>");
      ?
      es ensteht zwar kein fehler, aber die write funktion schreibt jetzt nur noch ab <input type ...
      Warum und wie kann ich jetzt das >< umgehen ?

  2. Hallo,   <----------Begruessung

    »»("<b>" + a + "" + b + " " "hallo", sagte er " " + c + "" + d + </b>");
    ---------------------------^

    Du solltest Deine Anfuehrungszeichen sortieren und, wie in der Anderen Antwort schon beschrieben, die Anfuehrungszeichen innerhalb des Strings maskieren (mit Backslash).
    Das sollte bestimmt so aussehen:
    ("<b>"+a+" "+b+""hallo", sagte er "+c+" "+d+"</b>");

    btw. <b> ist deprecated ;-)Greuss Georg

    1. Hi,

      btw. <b> ist deprecated ;-) [...]

      Nö, der Validator meckert zumindest nicht bei XHTML 1.1.

      Bye,
      Peter