Avatar billede freesite Nybegynder
06. juli 2005 - 11:49 Der er 26 kommentarer og
1 løsning

Komminikation mellem to dokumenter

Hej eksperter, skal bruge et stykke kode, som gør det muligt at kommunikerer mellem to dokumenter. (meget høj privotet)
Evt ved hjælp af

-------------dokument 1--------------------
function getvar(){
var str="hej";
return str;}

-------------dokument 2--------------------
str2=dokument1.getvar();
-------------------------------------------

noget i den stil (skal være i javascript)
Avatar billede barklund Nybegynder
06. juli 2005 - 11:53 #1
Hvor er de to dokumenter i forhold til hinanden? I hver sin frame og hentet fra samme domæne? I hver sin tab/hver sit vindue? På hver sin computer? I hver sit land?

Lidt mere informationer er nok nødvendig ;)
Avatar billede freesite Nybegynder
06. juli 2005 - 12:22 #2
dokumenterne findes enten i samme mappe, eller det ene er i en undermappe. men altid på samme web-server
Avatar billede barklund Nybegynder
06. juli 2005 - 12:49 #3
De er vel åbne i browseren samtidig? Ellers kan de ikke snakke sammen da :)
Avatar billede freesite Nybegynder
06. juli 2005 - 13:04 #4
Nej kan godt se problemet. er godt klar over at javascript og java ikke er det samme men fx. i java kan man jo refererer til metoder i andre klasser i samme mappe når de er public. Det jeg vil er at have et dokument som generere nogle oplysninger som skal være tilgnægeligt fra andre dokumenter, (fx en string som indeholder navnene på alle dokumenter i en mappe osv)
Avatar billede barklund Nybegynder
06. juli 2005 - 13:12 #5
Lav dog en js-fil, som du inkluderer - det er da det mest oplagte.
Avatar billede freesite Nybegynder
06. juli 2005 - 13:22 #6
er ikke sikker på hvad det vil sige, men lyder meget interasant. kan du ikke give et eksempel (js fil stiller ikke nogen krav til browser vel)
Avatar billede barklund Nybegynder
06. juli 2005 - 13:28 #7
Lav en fil med dit javascript i (og intet andet) - det kan du så loade fra alle dine sider som:

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

Så har du inkluderet det fælles javascript i hver af dine filer.
Avatar billede freesite Nybegynder
06. juli 2005 - 13:31 #8
kan jeg ikke få dig til at lave et eks hvor man har 2 dokumenter

--------------dok1---------------------

og


--------------dok2---------------------

bare et lille eksempel, det ville være super
Avatar billede barklund Nybegynder
06. juli 2005 - 13:33 #9
Jeg ved jo ikke, hvad du vil have dem til at kunne - men helt ærlig, prøv dig lidt frem. Det er virkelig ikke rocket science, men meget basal funktionalitet, som vi snakker om her.
Avatar billede freesite Nybegynder
06. juli 2005 - 13:41 #10
ok, har ikke prøvet det script før men kunne det se sådanne ud.

------------dok1--------------------------------
<script type="text/javascript" src="minfil.js"></script>
<script>
var a=min.js(getvar());
</script>

-------------min.js-----------------------------------
function getvar(){
var s="hej";
return s;
}
eller er det helt hen i skoven
Avatar billede freesite Nybegynder
06. juli 2005 - 13:44 #11
skal bare hente en string til et dokument, fra et andet dokument
Avatar billede barklund Nybegynder
06. juli 2005 - 13:44 #12
hvis filen hedder min.js, skal du jo ikke include minfil.js - og du kan bare kalde getvar() direkte i dok1 - du skal ikke skrive på nogen måde, at den kommer fra den includede fil...
Avatar billede freesite Nybegynder
06. juli 2005 - 13:49 #13
nej ok, det er mig. men hvad med sådanne her

------------dok1--------------------------------
<script type="text/javascript" src="min.js"></script>
<script>
var a=getvar();
</script>

-------------min.js-----------------------------------
function getvar(){
var s="hej";
return s;
}
Avatar billede freesite Nybegynder
06. juli 2005 - 13:59 #14
hey det virker, mange tak for hjælpen. Det kan ikke lade sig gøre at hente variabler fra et js script vel
Avatar billede barklund Nybegynder
06. juli 2005 - 14:12 #15
Eh? Er det ikke det, du netop gør med ovenstående? Jeg er ikke helt med på dit sidste spørgsmål.
Avatar billede freesite Nybegynder
06. juli 2005 - 14:18 #16
undskyld, mener om det kan lade sig gøre at hente data fra javascript til js script
Avatar billede barklund Nybegynder
06. juli 2005 - 14:21 #17
javascript og jsscsript er altså det samme her? Hvad er det, der skal hvorfra og hvortil?

Du kan godt:

------------dok1--------------------------------
<script>
  var navn = "Fætter";
</script>
<script type="text/javascript" src="min.js"></script>
<script>
  var a=getvar();
</script>

-------------min.js-----------------------------------
function getvar(){
  var s="Hej " + navn;
  return s;
}

Og så vil a blive til "Hej Fætter".
Avatar billede freesite Nybegynder
06. juli 2005 - 14:28 #18
dvs man fx godt kan

<script>
  var navn = "Fætter";
</script>
<script type="text/javascript" src="min.js"></script>
<script>
  var a=getvar();
</script>

-------------min.js-----------------------------------
function getvar(){
  var s="Hej " + navn;
  return s;
}

og så s indeholde "Hej Fætter" hvis et andet dokument spørger på det
Avatar billede freesite Nybegynder
06. juli 2005 - 14:31 #19
<script>
  var navn = "Fætter";
</script>
<script type="text/javascript" src="min.js"></script>
<script>
  Setvar("hej");
</script>

-------------min.js-----------------------------------
function Setvar(a){
  var s=a;
  }
og så vil s være lig med a når andre dokumenter spørger på s
Avatar billede barklund Nybegynder
06. juli 2005 - 14:40 #20
Nej, så skal du bruge cookies for eksempel - hvis du vil lagre ting mellem forskellige js-miljøer.
Avatar billede freesite Nybegynder
06. juli 2005 - 14:52 #21
tænkte på om dette her så også kunne lade sig gøre, hvor jeg includer et php fil i stedet for en js fil

------------dok1.html-------------------------------------
<script>
  var navn = "Fætter";
</script>
<script type="text/javascript" src="min.php"></script>
<script>
  var a=getvar();
</script>

-------------min.php-----------------------------------
<?php
$num_og_parents=72; ?>

<script language="JavaScript">
  function getvar(){
  var s = "<? print "$num_og_parents";?>";
  return s;  }
</script>
Avatar billede barklund Nybegynder
06. juli 2005 - 14:56 #22
Nej, nej, nej. Du har stadig ikke forstået det. Dine javascript-variabler lever KUN i klientens browser - de bliver IKKE sendt med til PHP, når en include bliver hentet.

Ovenstående kan godt lade sig gøre, men din PHP-include kan ikke læse navn-variablen fra javascriptet og gøre noget nyt med den.
Avatar billede freesite Nybegynder
06. juli 2005 - 15:41 #23
he, he  tror jeg er begyndt at forstå lidt mere. men det lykkedes
skulle jo bare bruge
<script type="text/javascript" src="min.php"></script>
og så refererer til mine variabler, det virker i hvertfald.
mange tak for hjælpen.
lige en sidste ting
kan man også sige
<script type="text/javascript" src="min.class"></script>
og så referere til en java metode
Avatar billede barklund Nybegynder
06. juli 2005 - 16:04 #24
Hvorfor skulle du kunne det? Det er til javascript-includes? Det har intet med PHP, Java eller noget som helst andet at gøre. Men hvis min.class (altså hvis man åbner den i sin browser direkte) outputter en tekstfil, som indeholder javascript, så kan det gøres - ellers er det fuldstændig fjollet forsøg.
Avatar billede freesite Nybegynder
06. juli 2005 - 16:12 #25
he, he kan godt se det nu, ville også lige høre inden jeg gik i gang med det.
takker mange gange for hjælpen, det er sku rart med nogle eksperter engang imellem. kan jeg få dig til at lægge et svar.
Avatar billede barklund Nybegynder
06. juli 2005 - 16:12 #26
Og et lille svar her ;)
Avatar billede barklund Nybegynder
06. juli 2005 - 16:35 #27
Tark for points ;)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester