Avatar billede need4speed Nybegynder
24. september 2002 - 14:21 Der er 31 kommentarer og
1 løsning

Layers og forms

Er der en som kan hjælpe mig med at lave 3 layers med hver deres form. Når man submitter layers i den 3 layer så skal indholdet fra layer 1 og 2 submittes i den 3 layer. Men hvis man undlader at bruge layer 2, så skal den kun submitte indholdet fra layer 1.

Det er ikke lykkedes for mig endnu.. please help me.
Avatar billede nikolajdu Nybegynder
24. september 2002 - 14:24 #1
Hvorfor opretter du spørgsmålet igen??? http://www.eksperten.dk/spm/261616

Du blev bedt om at vise lidt kode - Var det ikke nemmere??

/Nikolaj
Avatar billede bamzen Nybegynder
24. september 2002 - 14:25 #2
den skal altså kun flytte indholdet af lag 1 og 2 og smide det i lag 3?

kun ie, eller også netscape?
Avatar billede need4speed Nybegynder
24. september 2002 - 14:39 #3
Damn.. troeder ikke der var nogen som svarede.. min bror har slettet mails :( sorry.. men spørgsmålet kører videre herfra.
Avatar billede bamzen Nybegynder
24. september 2002 - 14:41 #4
men så svar på mit spørgsmål så jeg kan komme til at hjælpe dig....

gider bare ikke sidde og skrive tonsvis af kode ingen har brug for...
Avatar billede need4speed Nybegynder
24. september 2002 - 14:43 #5
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
//-->
</script>
</head>

<body>

<div id="Layer1" style="position:absolute; left:201px; top:48px; width:506px; height:121px; z-index:1">
  <p>Layer 1</p>
  <form name="form1" method="post" action="">
    <input type="text" name="textfield">
  </form>
  <p>&nbsp; </p>
</div>
<div id="Layer2" style="position:absolute; left:199px; top:185px; width:510px; height:121px; z-index:2">
  <p>Layer 2</p>
  <form name="form2" method="post" action="">
    <input type="text" name="textfield2">
  </form>
  <p>&nbsp; </p>
</div>
<div id="Layer3" style="position:absolute; left:199px; top:326px; width:511px; height:69px; z-index:3">
  <p>Layer 3 hvor indholdet submittes</p>
  <form name="form3" method="post" action="">
    <input type="submit" name="Submit" value="Submit">
  </form>
  <p></p>
</div>
</body>
</html>
Avatar billede need4speed Nybegynder
24. september 2002 - 14:43 #6
I denne koder er der oprette 3 layers de først to med hver deres formfelt og den 3 med submitknappen.
Avatar billede bamzen Nybegynder
24. september 2002 - 14:45 #7
Ok, og det du vil have er at når man submitter formen i layer3 så tager den informationen fra layer1 + informationen fra layer2, hvis der er nogen, er det korrekt?

Skal det bare virke i Internet explorer??? (det er klart det nemmeste, og er som regel rigeligt)
Avatar billede need4speed Nybegynder
24. september 2002 - 14:46 #8
Ja du har forstået det korrekt.
Avatar billede bamzen Nybegynder
24. september 2002 - 14:50 #9
godt er igang,, giv mig lige 5-10 min
Avatar billede bamzen Nybegynder
24. september 2002 - 14:53 #10
gad vide om dette ikke virker

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

doRealSubmit(){
f1 = getElementById('myid1').value
f2 = getElementById('myid2').value
getElementById('myid1new').value=f1
getElementById('myid2new').value=f2
return true
}
//-->
</script>
</head>
<body>
<div id="Layer1" style="position:absolute; left:201px; top:48px; width:506px; height:121px; z-index:1">
  <p>Layer 1</p>
  <form name="form1" method="post" action="">
    <input type="text" name="textfield" ID=myid1>
  </form>
  <p>&nbsp; </p>
</div>
<div id="Layer2" style="position:absolute; left:199px; top:185px; width:510px; height:121px; z-index:2">
  <p>Layer 2</p>
  <form name="form2" method="post" action="">
    <input type="text" name="textfield2" myid2>
  </form>
  <p>&nbsp; </p>
</div>
<div id="Layer3" style="position:absolute; left:199px; top:326px; width:511px; height:69px; z-index:3">
  <p>Layer 3 hvor indholdet submittes</p>
  <form name="form3" method="post" action="" onSubmit="return doRealSubmit()">
    <INPUT TYPE=hidden name=textfield ID=myid1new VALUE="">
    <INPUT TYPE=hidden name=textfield2 ID=myid2new VALUE="">
    <input type="submit" name="Submit" value="Submit">
  </form>
  <p></p>
</div>
</body>
</html>
Avatar billede need4speed Nybegynder
24. september 2002 - 14:57 #11
Virker det også hvis man f.eks skujler layer 2 - det vil jeg nemlig meget gerne have.
Avatar billede bamzen Nybegynder
24. september 2002 - 14:58 #12
Det skulle være underordnet... men jeg sidder lige og tester på det i forskellige sammenhænge,,, vender tilbage omlidt...
Avatar billede need4speed Nybegynder
24. september 2002 - 15:04 #13
Ok.. kanon - du er fandme cool hvis du kan få det til at virke, det er nemlig ikke lykkedes mig endnu :(
Avatar billede bamzen Nybegynder
24. september 2002 - 15:05 #14
Jeg har lavet det før, bare lige med at få huskeren til at du.... specielt når man ligger syg
Avatar billede need4speed Nybegynder
24. september 2002 - 15:15 #15
Damn.. synes alle er syge i øjeblikket - damn.. hader den kulde.
Avatar billede bamzen Nybegynder
24. september 2002 - 15:23 #16
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript" type="text/JavaScript">
function doSubmit(){
document.all['textfield'].value=document.all['textfieldold'].value
document.all['textfield2'].value=document.all['textfield2old'].value
document.all['form3'].submit()
}
</script>
</head>
<body>
<div id="Layer1" style="position:absolute; left:201px; top:48px; width:506px; height:121px; z-index:1">
<p>Layer 1</p>
<form name="form1" method="post" action="">
<input type="text" name="textfieldold">
</form>
<p>&nbsp; </p>
</div>
<div id="Layer2" style="position:absolute;visibility:hidden; left:199px; top:185px; width:510px; height:121px; z-index:2">
<p>Layer 2</p>
<form name="form2" method="post" action="">
<input type="text" name="textfield2old" value="b">
</form>
<p>&nbsp; </p>
</div>
<div id="Layer3" style="position:absolute; left:199px; top:326px; width:511px; height:69px; z-index:3">
<p>Layer 3 hvor indholdet submittes</p>
<form name="form3" method="get" action="" onSubmit="return false">
<INPUT TYPE=hidden name=textfield ID=myid1new VALUE="">
<INPUT TYPE=hidden name=textfield2 ID=myid2new VALUE="">
<input type="submit" name="Submit" value="Submit" onClick="doSubmit()">
</form>
<p></p>
</div>

</body>
</html>
Avatar billede bamzen Nybegynder
24. september 2002 - 15:27 #17
Det har jeg testet på min ie

Læg mærke til at jeg har omdøbt dine to første felter så de har et "old" bagved

Læg mærke til at jeg har givet textfield2old en værdi der hedder b, bare for testens skyld

jeg har haft layer2 både vist og skjult uden forskel, virker begge gange

Jeg har tilføjet 2 hidden field til din form i layer3

jeg har ændret action på form3 fra post til get, bare for testens skyld (så kan man se hvad der kommer i browserens location felt)

Det kan du bare ændre igen om du vil....

Det kan være en fordel hvis du har ekstremt lange tekststrenge du skal have overført.... (større end 32kb)
Avatar billede bamzen Nybegynder
24. september 2002 - 15:28 #18
at ændre den tilbage til post.........
Avatar billede need4speed Nybegynder
24. september 2002 - 15:38 #19
Ok tak for tippet ser lige om det virker.
Avatar billede need4speed Nybegynder
24. september 2002 - 15:48 #20
Men er det ikke muligt at lave en knap som åbner og lukker de forskellige layers?
Avatar billede bamzen Nybegynder
24. september 2002 - 15:50 #21
Jo, men jeg skal lige hente min datter....

Hvis du lukker dette spørgsmål,, kommer jeg tilbage og laver det til dig lidt senere.....
Avatar billede need4speed Nybegynder
24. september 2002 - 15:53 #22
Ok.. det er aftale.
Avatar billede bamzen Nybegynder
24. september 2002 - 16:28 #23
Nu er jeg sådan set tilbage,,,,,  men du har jo ikke lukket det eksiterende spørgsmål endnu....
Avatar billede need4speed Nybegynder
24. september 2002 - 16:32 #24
Det er hermed lukket? kan du så hjælpe mig med de sidste?
Avatar billede bamzen Nybegynder
24. september 2002 - 16:35 #25
se de 2 nye javascript funktioner, samt de første rækker links lige efter body tagget


<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript" type="text/JavaScript">
function doSubmit(){
document.all['textfield'].value=document.all['textfieldold'].value
document.all['textfield2'].value=document.all['textfield2old'].value
document.all['form3'].submit()
}

function doShow(what){
what.style.visibility='visible'
}
function doHide(what){
what.style.visibility='hidden'
}

</script>
</head>
<body>
vis lag: <A HREF=java script:doShow(Layer1)>1</A> | <A HREF=java script:doShow(Layer2)>2</A> | <A HREF=java script:doShow(Layer3)>3</A><BR>
Skjul lag: <A HREF=java script:doHide(Layer1)>1</A> | <A HREF=java script:doHide(Layer2)>2</A> | <A HREF=java script:doHide(Layer3)>3</A>
<div id="Layer1" style="position:absolute; left:201px; top:48px; width:506px; height:121px; z-index:1">
<p>Layer 1</p>
<form name="form1" method="post" action="">
<input type="text" name="textfieldold">
</form>
<p>&nbsp; </p>
</div>
<div id="Layer2" style="position:absolute;visibility:hidden; left:199px; top:185px; width:510px; height:121px; z-index:2">
<p>Layer 2</p>
<form name="form2" method="post" action="">
<input type="text" name="textfield2old" value="b">
</form>
<p>&nbsp; </p>
</div>
<div id="Layer3" style="position:absolute; left:199px; top:326px; width:511px; height:69px; z-index:3">
<p>Layer 3 hvor indholdet submittes</p>
<form name="form3" method="get" action="" onSubmit="return false">
<INPUT TYPE=hidden name=textfield ID=myid1new VALUE="">
<INPUT TYPE=hidden name=textfield2 ID=myid2new VALUE="">
<input type="submit" name="Submit" value="Submit" onClick="doSubmit()">
</form>
<p></p>
</div>

</body>
</html>
Avatar billede need4speed Nybegynder
24. september 2002 - 16:41 #26
Det ser sgu smart ud.. men er det muligt at lave så hvis man trykker på 1 så kommer den frem og hvis man trykker igen så forsvinder den?
Avatar billede bamzen Nybegynder
24. september 2002 - 17:27 #27
Ja

du kan eksperimentere med denne funktion

funktion toggleLayer(what){
if(what.style.visibility=='hidden'){
what.style.visibility='visible'
}else{
what.style.visibility='hidden'
}
}
Avatar billede need4speed Nybegynder
24. september 2002 - 18:03 #28
Ok thx :)
Avatar billede need4speed Nybegynder
24. september 2002 - 21:14 #29
Ok hvor kan jeg finde de funktioner henne?
Avatar billede need4speed Nybegynder
24. september 2002 - 21:22 #30
Jeh vil blive rimelig glad hvis du kunne ghjælpe mig med sætte

funktion toggleLayer(what){
if(what.style.visibility=='hidden'){
what.style.visibility='visible'
}else{
what.style.visibility='hidden'
}
}

------------------
Funktionen op
Avatar billede bamzen Nybegynder
24. september 2002 - 21:37 #31
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript" type="text/JavaScript">
function doSubmit(){
document.all['textfield'].value=document.all['textfieldold'].value
document.all['textfield2'].value=document.all['textfield2old'].value
document.all['form3'].submit()
}

funktion toggleLayer(what){
if(what.style.visibility=='hidden'){
what.style.visibility='visible'
}else{
what.style.visibility='hidden'
}
}

</script>
</head>
<body>
Toggle lag: <A HREF=java script:toggleLayer(Layer1)>1</A> | <A HREF=java script:toggleLayer(Layer2)>2</A> | <A HREF=java script:toggleLayer(Layer3)>3</A><BR>
<div id="Layer1" style="position:absolute; left:201px; top:48px; width:506px; height:121px; z-index:1">
<p>Layer 1</p>
<form name="form1" method="post" action="">
<input type="text" name="textfieldold">
</form>
<p>&nbsp; </p>
</div>
<div id="Layer2" style="position:absolute;visibility:hidden; left:199px; top:185px; width:510px; height:121px; z-index:2">
<p>Layer 2</p>
<form name="form2" method="post" action="">
<input type="text" name="textfield2old" value="b">
</form>
<p>&nbsp; </p>
</div>
<div id="Layer3" style="position:absolute; left:199px; top:326px; width:511px; height:69px; z-index:3">
<p>Layer 3 hvor indholdet submittes</p>
<form name="form3" method="get" action="" onSubmit="return false">
<INPUT TYPE=hidden name=textfield ID=myid1new VALUE="">
<INPUT TYPE=hidden name=textfield2 ID=myid2new VALUE="">
<input type="submit" name="Submit" value="Submit" onClick="doSubmit()">
</form>
<p></p>
</div>

</body>
</html>
Avatar billede need4speed Nybegynder
25. september 2002 - 13:20 #32
Synes desværre ikke det virker :(
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