Boris Hoeller: Der switch case mit Clou

Hi2all,

meiner Funktion wird (hier exemplarisch) 'Rat' oder 'Tat' oder wer was übergeben. Jetzt soll hierauf ein HTML Anweisungsatz geladen werden, der in das <div id="outputarea"></div> Feld gepiped werden soll.
Hier die Dateien rat.dat, tat.dat oder wie auch immer ...
In perl wäre das wohl ein require, wie geht das in JS?

In den eckigen Klammern steht mein Wunschdenken, das korregiert werden müsste ...... Also:

switch(vorgang) {

case "Rat":  
outputvalue = [import bzw. call 'rat.dat'?????]  
break;  
  
case "Tat":  
outputvalue = [import bzw. call 'tat.dat'????]  
break;  

default:  

alert('Kein geregelter Fall');
        outputvalue = 'Kein geregelter Fall';
  break;
   }

document.all.outputarea.innerHTML = outputvalue;

ANY IDEA ANY1?
Danke, wenn ;))

CU
Bo

  1. Hallo Boris!

    Ich habe alles verstanden, Danke!

    PAF (patrickausfrankfurt)

    1. Hi Patrick.

      Ich habe alles verstanden, Danke!

      Wie meinst'n das jetzt?

      Calocybe

  2. Moin!   (sagt man glaub ich um die Zeit (weiss ich nicht so genau, da ich zu dieser Zeit meistens schlafe))

    Ich nehme mal an, Du willst jetzt keine Hinweise auf serverseitige Loesungen. (wenn ich auch nicht weiss, was das in Perl mit require zu tun hat)

    Also vielleicht machst Du einfach ne extra JS Datei, die Du dann mit
    <SCRIPT SRC="outputvalues.js" TYPE="text/javascript">  einbindest. (Funktioniert nur mit den neueren Browsern, fuer die anderen muesstest Du das Zeug dann doch in die HTML-Datei selbst schreiben (geht natuerlich schon mit Server Side Includes, aber das ist ja dann halt serverseitig :(  ))

    In der JS:
    var Rat_value = "Guter Rat ist teuer - oder man holt ihn sich im Forum";
    var Tat_value = "Es gibt nichts Gutes... naja, usw, ist von Erich Kaestner";

    Dann jeweils  outputvalue = Rat_value  oder aehnlich

    Falls Du jetzt unbedingt Dateien lesen willst - vergiss es! Geht nicht mit JS.

    Calocybe

    1. Moin!   (sagt man glaub ich um die Zeit (weiss ich nicht so genau, da ich zu dieser Zeit meistens schlafe))

      Ich nehme mal an, Du willst jetzt keine Hinweise auf serverseitige Loesungen. (wenn ich auch nicht weiss, was das in Perl mit require zu tun hat)

      Stimmt ein wenig, da würde man wohl eher sagen

      $outputvalue = 'cat rat.dat'; # oder ähnlich

      Mit dem require analog sozusagen ist die Lösung möglich die mit der extra Datei zu avisieren wäre.

      Also vielleicht machst Du einfach ne extra JS Datei, die Du dann mit
      <SCRIPT SRC="outputvalues.js" TYPE="text/javascript">  einbindest. (Funktioniert nur mit den neueren Browsern, fuer die anderen muesstest Du das Zeug dann doch in die HTML-Datei selbst schreiben (geht natuerlich schon mit Server Side Includes, aber das ist ja dann halt serverseitig :(  ))

      In der JS:
      var Rat_value = "Guter Rat ist teuer - oder man holt ihn sich im Forum";
      var Tat_value = "Es gibt nichts Gutes... naja, usw, ist von Erich Kaestner";

      Und da liegt die Ursache meiner Frage: Leider rebelliert JS, wenn man das nicht alles in eine
      Zeile schreibt und deswegen, der guten Übersicht wegen, würde ich lieber Dateien einlesen ;)

      Dann jeweils  outputvalue = Rat_value  oder aehnlich

      Falls Du jetzt unbedingt Dateien lesen willst - vergiss es! Geht nicht mit JS.

      Dürfte was mit Sicherheitskonzept zu tun haben, wenn ich mal drüber nachdenke ....

      Danke für Deine Hinweise

      Calocybe

      CU
      Bo

      1. Und da liegt die Ursache meiner Frage: Leider rebelliert JS, wenn man das nicht alles in eine
        Zeile schreibt und deswegen, der guten Übersicht wegen, würde ich lieber Dateien einlesen ;)

        Naja, wenn Du einen String am Zeilenende nicht korrekt abschliesst, ja dann kann JS Dich halt nicht so gut leiden. Aber kannst ja so machen:

        var Rat_value = "Guter Rat ist teuer - " +
                               "oder man holt ihn sich im Forum, " +
                               "oder man kauft sich ein Buch, " +
                               "aber das waere ja dann wieder teuer.";

        Note: Erst das Semikolon schliesst die Anweisung ab. (Das ist der Grund, warum Basic niemals eine Programmiersprache sein wird.)

        Falls JS auch so cool ist wie C, kannst Du die + Zeichen auch weglassen. Das weiss ich aber nicht.

        Falls Du jetzt unbedingt Dateien lesen willst - vergiss es! Geht nicht mit JS.
        Dürfte was mit Sicherheitskonzept zu tun haben, wenn ich mal drüber nachdenke ....

        Genau. Obwohl es bei mir nichts ausmacht, wenn mir irgendjemand die Autoexec.bat modifiziert ;-)

        Calocybe