31. oktober 2000 - 01:25Der er
16 kommentarer og 1 løsning
Dynamiske checkboxe! Kan dette lade sig gøre??
Hej jeg har et problem. Jeg skal have lavet en \"slags\" vis/vis ikke funktion. Jeg har en dynamisk genereret form hvori der indgår x antal checkboxe. Disse checkboxe skal, hvis man checker dem, få et textfield til at vises og når man unchecker skal textfieldet ikke vises. Dette kan jeg gøre med dette udemærkede script (fundet på Eksperten), men det virker kun når der er en checkbox og kun i ie. Det jeg gerne vil er altså at have ændret scriptet så det virker på x antal checkboxe og både til ie og ns.
Håber det giver mening? jeg vedlægger scriptet så i kan se hvad jeg snakker om.
<script language=\"javascript\"> function checkState(chBox) { if(chBox.checked) addTextField(); else removeTextField(); } function addTextField() { document.all.adiv.innerHTML=\"<input type=\'text\' id=\'text\' value=\'Skriv navn her\'/>\"; } function removeTextField() { document.all.adiv.innerHTML=\"\"; } </script>
Her kalder jeg funktionen response.write(\"<input type=checkbox onClick=\'checkState(this)\' name=\'\")
Og dette er textfieldet response.write(\"\'><div id=\'adiv\'>Her skulle der gerne snart stå noget brugbart:)</div>\")
Håber på snarlig hjælp, da det er lidt en hastesag Peace Putz
Ole>>> Det skal bruges i en formular hvor der er muligheden for at skrive navn i et antal texfelter. Endvidere kan der være muligheden for at tilføje et ekstra textfelt, ved et tryk i en checkbox. Dvs at jeg gerne vil vide hvordan jeg får lavet sådan at, når man checker checkboxen, så kommer der et texfelt frem og når man unchecker igen skal feltet forsvinde. Både textfelt og checkbox skal have et dynamisk genereret navn og der skal kunne være x antal af hver!
Håber det kaster lidt mere lys over problemet, og til i to andre brug venligst et andet forum til spørgsmål/kommentarer omkring PC og MAC :)
putz>>> Der er ingen grund til at skulle vælge et andet forum til at diskutere kompatibilitet, da det faktisk omhandler hvilken løsning vi kan give dig på dit problem!
Man kan ikke have inputs liggende i forskellige <div>\'s i en form - hvis man går efter X-browser-kompabillitet. Hvis man ikke tror på mig, kan jeg oplyse, at Dan Steinman er kommet til samme resultat. Se evt: http://www.dansteinman.com/dynduo/en/forms.html
At spacey kommenterer min \'pisse-Mac\' er en ganske venlig \'inside\' ting, vi har kørende :o) Kompatibillitet er netop kerneproblemet i dit spørgsmål. Jeg sidder midt i noget arbejde, men kikker gerne på det senere. /mvh
>>putz jeg tillader mig lige at komme med endnu et indlæg, selv om det ikke er et bud på en løsning.
>>spacey Jeg ved ikke om jeg gør noget forkert - jeg har kopieret fra <html> til </html> ind i en .htm fil, og åbnet den i de nævnte browsere. Ved tryk på \'Klik her\' sker dette: - Opera: no such variable \"Skriv\" - IE: run time error has occurred, line 0, object expected - NS: der sker ingenting
Men på den anden side set kan ovenstående vel være ligemeget, efter man har læst olebole\'s henvisning....
Ole>>> Det ved jeg godt, men det var egenligt heller ikke den påstand jeg havde en anden mening om :-)
Du skrev at man ikke kan have div elementer i en form, hvilket man godt kan (i de browsere jeg har testet i!). Man kan bare kun have input felter i div elementerne i IE, og ikke i NS som behandler input elementer noget anderledes.
lthrane>>> Well, det lyder jo underligt, men what the fuck, det er ikke løsningen på putz problem anyway.
PS: Formen \'f\' bør være den form, du ender med at sende afsted. De to inputs \'box1\' og \'box2\' bør vel være type=\'hidden\'...de er kun type=\"text\" for at du kan se, hvad der sker. Du kan udvide antallet af check-boxe/div/inputs så meget, du lyster. /mvh
Ole>>> Jeg takker mange gange for scriptet, men det er nu ikke helt det jeg er ude efter. Hvis bare løsningen var sådan var det superfedt, men problemet er at jeg ikke ved hvor mange checkboxe og textfelter der er til at starte med. Disse bliver genereret dynamisk ud fra brugerens valg. Dvs at jeg ikke kender eksempelvis <div id=\"ch2Div\" class=\"texDiv\"> på forhånd og derfor er det disse \"tags\" der gerne skulle kunne genereres dynamisk. Ved du om man kan lave dynamiske div tags? og i så fald hvordan? Jeg tænker noget i retning af <div id=\"enVariabel_der_bliver_talt_op\"> for derefter at bruge denne i dit script! Nå men du får dine point, for et godt stykke arbejde, selv om det ikke løser mit problem.
Ole>>> Du er gud og jeg er dybt taknemmelig. Ud fra dit script med nogle modifikationer har jeg fået problemet løst (dog kun i IE). Jeg har lavet div id\'et dynamisk og nu kan jeg have ligeså mange checkboxe og textfelter det skal være :). Og alt foregår dynamisk, så tusind tak for hjælpen Ole.
Dette står inde i en laaaaaaaaaang \"for sætning\"
If etellerAndet = \"Falsk\" then response.write(\" \") Else
response.write(\"kryds af her:<input type=checkbox onclick=\'checkMe(this)\' name=\'text\"&vaerelseID&\"\'>\")
response.write(\"<div id=\'text\"&vaerelseID&\"Div\' class=\'texDiv\'><input type=text name=\'\"&vaerelseID&\"_Opredningsnavn\' value=\'Skriv navn her\'></div>\")
og så en masse mere. Jeg kan forstå på din kode at NS behøver \"nye\" form tags for at virke og jeg har da også prøvet at lave textfeltet inde i nye form tags og jeg kan også godt få NS til at vise/ikke vise textfelterne ved click i checkboxene, men textfelterne står mærkeligt på siden og min \"submit\" knap er væk.
Har du mulighed for at uploade et dokument, jeg kan se? Hvis du ikke vil ahve URL\'en ud her, kan du maile den til mig: oc@adr.dk /mvh
Synes godt om
Ny brugerNybegynder
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.