g.a.: include für javascript

hi,
gibt es sowas wie den include(den gibts auch in PHP) befehl
auch für javascript?

wenn ja, wie heisst der und wie funktioniert der?

  1. Du kannst Javascript Dateien auslagen und in HTML einbinden, indem Du im script tag die Datei als Source angibst:

    <head>
    ...
    <script language='JavaScript' src='funktionen.js'></script>
    ...
    </head>

    1. Hi!

      <script language='JavaScript' src='funktionen.js'></script>

      richtiger ist:

      <script type="'text/javascript' src='funktionen.js'></script>

      Einen richtigen include, also innerhalb eines Javascript-Bereiches, gibt es meines Wissens nach nicht.

      Gruß

      Martin

      1. <script type="'text/javascript' src='funktionen.js'></script>

        Ohne das dopelte Anführungszeichen vor dem 'text/...

    2. aber es muss mitten im javascript ausgeführt werden.
      weil ich wollte damit eine datenübertragung zwischen server und user schaffen.

      z.B.:

      auf: "include("http://bla/index.php?name=heinz");"

      antwortet der server(php):

      "nachname=ketchup;addresse=coolestrasse666;"

      und das der gesendete code dann ausgeführt wird.

      1. »» aber es muss mitten im javascript ausgeführt werden.

        weil ich wollte damit eine datenübertragung zwischen server und user schaffen.

        z.B.:

        auf: "include("http://bla/index.php?name=heinz");"

        antwortet der server(php):

        "nachname=ketchup;addresse=coolestrasse666;"

        und das der gesendete code dann ausgeführt wird.

        Versteh nicht ganz, warum der PHP-Server Javasript ausführen soll???
        Javascript ist mE immer Client-seitig, meistens zumindest, oder?
        PHP macht was auf dem Server, also Server-seitig, oder?

        Also, wenn Datenübertragung stattfinden soll, so wird sie bei der Ausführung von JavaScript auf dem Client gestartet und damit ist die Richtung eindeutig vom Client zum Server. Ein >>include<< ist daher mE nicht notwendig, das was JavaScript jetzt in deinem Falle tun sollte ist ohnehin schon vorher definierbar, damit kann das was in einem Include definiert ist ohnehin in dem gleichen Script definiert werden und das macht somit keinen Unterschied.

        Auf der PHP-Seite, also auf dem Server, kann man das, was da von dir offensichtlich angedacht worden ist, ohnehin in PHP gleichermaßen oder sogar noch viel besser definieren - also warum einen PHP-Server zum JavaSrcipt-Server degradieren??

        Include verwendet man in anderen Programmierumgebungen zum Auslagern von Definitionen, die hernach z.B. vom Compiler verwendet werden, um dabei z.B. Defintionen von Typen öffentlich zumachen. Z.B. in C/C++ sind das die Header-files, die ohnehin keinen ausführbaren Code enthalten.

        Eine nachträgliche Erweiterung von Scripts kann man aber trotzdem bewerkstelligen:

        document.write("<SCRIPT LANGUAGE='JavaScript1.5' SRC='erweiterungs_script.js' TYPE='text/javascript'></SCRIPT>");

        das funzt unter HTML im BODY zwischen Block-Elementen und kann von PHP aus veranlaßt werden. Aber das macht unter PHP wenig Sinn, bedenke den traffic der damit erzeugt wird, in deinem Falle wäre das:
        a) eine Scriptfunktion auf dem Client fordert den PHP-Server auf etwas zu tun.
        b) der PHP-Server sendet dann z.B. den o.g. Code
        c) der dann auf dem Client ausgeführt wird und somit den Server auffordert die Datei "erweiterungs_script.js" zu senden, die dann last but not least
        d) dann endllich auf dem Client ausgeführt wird.
        also umständlicher geht's wirklich nimma

        Ich benutze den Trick selber aber INNERHALB von Scripts um bei einer Entscheidung, die im Vorspan des Scripts gelaufen ist, dann ein anderes Browser spezifisches Script zu laden. Wenn das ganze aber auf einem PHP-Server zum laufen kommt, ist dieser ganze Schmutz aber nicht notwendig, da man die Browser-Probs auf der PHP-Seite viel eleganter lösen kann.

        Grüße
        BoBo

        1. nein,
          ich wollte das der server dem client daten/code schickt die der client dann ausführt. dass sollte geschehen ohne das die seite des browsers verändert wird.

          z.b. im javascript:
          "
          ...
          include("http://blabla/index.php?daten=datenandenserver");
          ...
          "

          antwortet der server mit:

          "
          daten="datenandenclient;"
          "

          dann gehts im javascript weiter:

          "
          if(daten=="datenandenclient"){alert("erfolgreich übertragen!");}
          "