Avatar billede spiri Nybegynder
25. november 2001 - 16:38 Der er 5 kommentarer og
1 løsning

Layers og inputfelter

Jeg har et problem med en form.

Jeg er ved at lave et filuploadscript, hvor man skal kunne vælge x antal filer til upload.

Jeg har fået klistret noget sammen, men kan ikke få det til at funke som jeg vil. Scriptet er her:

<html>
<head>
<title>The Dynamic Duo</title>
<script language=\"JavaScript\">
<!--

ns4 = (document.layers)? true:false
ie4 = (document.all)? true:false

bluecount = 0
redcount = 0
var id
function layerWrite(nestref,text) {
    id = \'ds\';
    if (ns4) {
        var lyr = (nestref)? eval(\'document.\'+nestref+\'.document.\'+id+\'.document\') : document.layers[id].document
        lyr.open()
        lyr.write(text)
        lyr.close()
    }
    else if (ie4) document.all[id].innerHTML += text
}

//-->
</SCRIPT>
<STYLE TYPE=\"text/css\">
<!--
.white {color:white;}



-->
</STYLE>
</HEAD>

<BODY BGCOLOR=\"#FFFFFF\">
<form action=\"test.php\" method=\"GET\">
Tilføj:
<A HREF=\"java script:layerWrite(null,\'<input type=\\\'file\\\' name=\\\'fil\'+(++bluecount)+\'\\\'><br>\')\">\"Inputfelt\"</A>

<table><tr><td>
<DIV ID=\"ds\" style=\"position:relative\"><table><tr><td>inputfelter start</td></tr></table>
</td></tr><tr><td>inputfelter slut</td></tr></table>

</DIV>
<input type=\"submit\">
</BODY>
</HTML>


Det virker kun i IE. (Det er ikke mig der bestemmer!!)

Problemet er, at når man har valgt noget i et eller flere inputfelter, og derefter tilføjer et felt mere, slettes det man allerede har valgt.

Hvordan kan jeg løse det?
Avatar billede nute Nybegynder
25. november 2001 - 16:59 #1
ehhh....selv om det kommer til å fungere som du ønsker (med at innholdet ikke blir slettet) så vil du aldri få sendt informasjonen over til neste side. grunnen til det er at ditt formular ikke kjenner til de formelement som du legger til. for å få det til å fungere, skal du inn  å manipulere DOM treet, noe som krever litt mer kode enn det du har copy/pastet...
Avatar billede spiri Nybegynder
25. november 2001 - 17:14 #2
Det passer nu ikke helt....

Det virker fint nok nu. Mit form tag ser naturligvis anderledes ud. Ovenstående er kun for eksemplets skyld.

Dog har jeg kun testet det med IE 5, jeg ved således ikke om det funker med andre browsere.
Avatar billede nute Nybegynder
25. november 2001 - 17:23 #3
din kode fungerer kun i IE...

jeg kan se at det \"fungerer\"...at du får sendt verdiene  over til neste side, meeen...det er kun IE som forstår din kode...

hvis du skal gjøre det ordentlig, skal du som jeg har skrevet, kode opp mot DOM treet...
Avatar billede spiri Nybegynder
25. november 2001 - 17:25 #4
Jeg vil MEGET gerne gøre det ordenligt, jeg ved bare ikke hvordan :)

Hjælp...
Avatar billede nute Nybegynder
25. november 2001 - 17:29 #5
Les hva jeg har skrevet @ 25/11 2001 17:23:33 :

\"hvis du skal gjøre det ordentlig, skal du som jeg har skrevet, kode opp mot DOM treet...\"

/nute

Avatar billede olebole Juniormester
25. november 2001 - 19:03 #6
<ole>
Du kan ikke lave form-felter inde i et positioneret div, hvis ikke dine form-tags ligger i div\'et.
Tager du ikke hensyn til det, vil visse browsere ikke se dine formfelter som hørende til formen.

Selvom Dan Steinman\'s tutorial \'The Dynamic Duo\' er lidt bedaget, giver den alligevel god info om mange DHTML-problemer - bl.a. dette. Prøv at gå til:
  http://www.dansteinman.com/dynduo/en/forms.html
/mvh
</bole>
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