Avatar billede scifo Nybegynder
01. maj 2006 - 14:55 Der er 17 kommentarer og
1 løsning

Overfør data fra et vindue til et andet

hej eksperter.

Jeg sidder med en funktion her hvor du skal kunne klikke på en knap, hvorefter data fra et <Input> feldt, bliver overført til et andet input feldt i et andet vindue.

Jeg havde forestillet mig noget i stil med:
document.form1.feldt.value=XXX.XXX.document.form1.value.

Mit problem er at jeg ikke ved hvad XXX.XXX. skal være for at definere den anden browser.
Ex.
Jeg har lavet en form med et text feldt, og har DGS.dk åben.
Så klikker jeg på en knap og det jeg har skrevet i text feldet bliver over ført til tlf nr feltet på DGS.dk

Mvh
Scifo
Avatar billede TRoXa Novice
01. maj 2006 - 14:59 #1
Dette kan ikke lade sig gøre. Det er en sikkerhedsbrist i internet explorer hvis man kunne det og prøver man (det har jeg :P) så får man en "Access Denied" fejl i javascript.
Avatar billede scifo Nybegynder
01. maj 2006 - 15:01 #2
Det må da kunne lade sig gøre på en eller anden måde...
har nemlig set det før et sted... men kunne bare ikke få fat i koden da side var
skrevet i Asp.
/Scifo
Avatar billede TRoXa Novice
01. maj 2006 - 15:12 #3
Jeg tør godt love dig at det ikke kan lade sig gøre. Ihvertfald ikke på den måde som du ønsker det.

Men det du kan gøre (kommer an på sikkerheden på DGS.dk) er følgende:

1. Lav en form med samme navn som på DGS.dk
2. Lav de formfelter som du ønsker, men med samme navn som på DGS.dk (tjek evt Vis->Kilde)
3. Lav en submit knap der hedder det samme som på DGS.dk
4. Som action på form feltet skal der stå det samme som på DGS.dk .. dog skal der nok tilføjes http://www.dgs.dk/blabla

men den anden løsning som du forespørger er 100% umulig
Avatar billede saymyname Nybegynder
01. maj 2006 - 15:13 #4
Det KAN lade sig gøre... Men det er besværligt.
Husk på at det er meget browser pecifikt hvordan det kan gøres.

http://www.webdevelopersjournal.com/articles/dynamic_doc_windows.html

Denne webside har en udførlig tuturial.
Avatar billede saymyname Nybegynder
01. maj 2006 - 15:16 #5
HUSK: Det er ikke sikkert at firefox og Netscape vil ære glade for teknikkerne beskrevet der. De er til MSIN 5.5.
Avatar billede TRoXa Novice
01. maj 2006 - 15:18 #6
saymyname > Nope kan ikke lade sig gøre :) Det der gøres der er at siden åbner et vindue (dvs det ejers af dens "OPENER") og dermed kan man få lov til at skrive til den, men at skrive til en anden side er ikke muligt.
Avatar billede scifo Nybegynder
01. maj 2006 - 15:39 #7
troxa har ret, det er i et eksistrende vindue som ikke er åbnet af Parent, det er der mit problem ligger. :-(
Avatar billede saymyname Nybegynder
01. maj 2006 - 15:41 #8
Troxa:
Det der er desværre mest en debat om ordvalg.

Ja, det kræver at det der har åbnet det andet vindue er det browser vindue hvor JavaScripten afvikles - ellers vil det ikke virke. STADIG er der to vinduer og det er muligt at overføre variabler imellem de 2 vinduer, ligesom personen der skrev ønskede det.

Det som du prøvede at skrive, Troxa, er at variablerne ikke kan overføres imellem forskellige PROCESSER. Men som du selv bemærkede vil en process der åbner et andet vindue have det nyåbnede vindue som "barn" - og dermed vil der være process ID's der er ens der og derfor kan variablerne i forms' overføres imellem 2 VINDUER.
Avatar billede saymyname Nybegynder
01. maj 2006 - 15:42 #9
PS: Hvis det ikke er åbnet med det oprindelige som parent kan du ikke.
Avatar billede TRoXa Novice
01. maj 2006 - 15:47 #10
selvom man laver en

var newwindow = '';
newwindow=window.open('www.dgs.dk','dgs');
og man så alver newwindow.form[0].blabla.blabla = blabla, så vil den sige access denied selvom den kommer fra samme process.

Men den eneste løsning der er på dette er mit forslag med at sende oplysningerne direkte til DGS submit siden, men det vil kun virke hvis de ikke har været inde og lukke for dette "hul".
Avatar billede saymyname Nybegynder
01. maj 2006 - 15:47 #11
NU SPAMMER JEG!!!

Man kan gøre noget der LIGNER det, enten vha IP addresser eller via de meget populære COOKIES.


Så hvis du ønsker at gøre det meget til samme computer må du benytte cookies, det kan efterligne den effekt som jeg tror at du mener.
Avatar billede scifo Nybegynder
01. maj 2006 - 19:03 #12
ved ikke om i har forstået mig korrekt, den skal kun lave "copy" af den tekst jeg har skrevet og "Paste" i feltet på dgs.dk.
P.S: Det er ikke DGS det skal bruges til men en internt system i virksomheden hvor jeg arbejder (Har ikke adgang til siden fra server-side)
Avatar billede scifo Nybegynder
01. maj 2006 - 20:37 #13
ja jeg har afvist svarene, så den stadigvæk står åben. Siger lige til hvis jeg har brug for et svar til at give pointsne til.
Avatar billede roenving Novice
02. maj 2006 - 02:24 #14
Hrm, det lyder som om, der er noget forvirring her ...

Det er _ikke_ muligt at scripte mod sider, som browseren ikke forstår kommer fra samme domæne (sikkert derfor troxa insisterer på, at det ikke er muligt !-)

-- det er derimod sagtens muligt, hvis de kommer fra samme domæne, men det kræver så, at det vindue, der udfører det har kendskab til det andet vindue (at det f.eks. er opener, altså det vindue, der har åbnet det aktuelle, eller at det aktuelle vindue har åbnet det andet og opbevaret en reference til det andet i en variabel !-)

Det vil derfor aldrig være muligt at indsætte noget i et felt på f.eks. dgs.dk, mens det sagtens kan være muligt at gøre det imod en anden side, der ligger på et intranet, dog kan det være ndvendigt at definere sidens domæne vha. document.domain !o]
Avatar billede TRoXa Novice
02. maj 2006 - 13:56 #15
roenving > yep derfor jeg siger det ikke kan lade sig gøre da der er tale om DGS som der hele tiden er givet som eksempel :)

scifo > Kunne være rart med en 100% beskrivelse af hvad det helt præcist er du ønsker, da du hele tiden har brugt DGS som eksempel hvilket egentlig ikke var det du ønskede og det er det hele mit svar er baseret på. Men når du ikke har adgang til server-side koden, så tvivler jeg på at det kan lade sig gøre.
Avatar billede scifo Nybegynder
03. maj 2006 - 21:49 #16
troxa > Ja er så småt ved at indse det :-( Desværre, som skrevet tidligere er det en web-baseret database, hvori vi skal logge, hver gang vi har lavet en opgave.
Siden indeholder en form med:
- Et text feldt ( Opgave nummer)
- En Drop-down boks ( Type opgave )
- En submit knap
Jeg har lavet et system, hvor du skriver opgave numret i et text feldt, og den så udfører de fleste af handlingerne, der normalt skulle laves manuelt, og kopiere numret til "ClipBoard" når du trykker på Submit knappen.

Det jeg ønsker er at når jeg trykker på submit knappen, skriver den selv numret ind i database -> Text feldtet, så jeg bare skal klikke på submit knappen, i stedet for at skulle paste numret først.

Jeg "må" ikke submitte numret udefra "lave method="POST"" udefra, dette skal gøre i selve systemet.

Håber dette giver et bedre indblik i mit problem. :-)

Mvh
Scifo

P.S. Jeg tjener ikke noget på dette system, det er blot for at lette min hverdag på jobbet :-)
Avatar billede scifo Nybegynder
04. juni 2006 - 01:06 #17
troxa: Ja du har ret... har nu ledt længe nok og kan ikke få det til at lade sig gøre, og eftersom du var en der konkluderede det til at starte med, må det være dine points, hvis du ligger et svar, er det dine ;-)

Mvh
Scifo
Avatar billede saymyname Nybegynder
04. juni 2006 - 01:16 #18
Igen : i deres kode kan du se deres submit information. Åben et nyt vindue hvorfra der bliver sendt data til deres script der passer me det du vil have. Det virker på DGS.dk fx.
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