Avatar billede jems Nybegynder
21. august 2001 - 16:04 Der er 6 kommentarer og
2 løsninger

Udskiftning af indhold i tabeller

Hejsa
Jeg har følgende script:

<SCRIPT LANGUAGE=\"JavaScript\">

function changeStuff(choice) {

    if (choice == \'1\') {
        document.all.venstre.innerHTML = \'<b>Svar p&aring; sp&oslash;rgsm&aring;l:<br>(Nyt svar p&aring; hver linie)</b>\';
        document.all.hojre.innerHTML = \'<textarea name=\"Svar\" wrap=\"VIRTUAL\" rows=\"4\">Hej</textarea>\';
        document.all.andet.innerHTML = \'<input type=\"checkbox\" name=\"CheckAndet\" value=\"1\"> Tilf&oslash;j &quot;Andet&quot; felt, st&oslash;rrelse <input type=\"text\" name=\"StrAndet\" size=\"3\" maxlength=\"3\"> max 70\';
        document.all.kommentar.innerHTML = \'<input type=\"checkbox\" name=\"CheckKommentar\" value=\"1\"> Tilf&oslash;j &quot;Kommentar&quot; felt, st&oslash;rrelse <input type=\"text\" name=\"StrKommentar\" size=\"3\" maxlength=\"3\"> max 70\';
    } else if (choice == \'2\') {
        document.all.venstre.innerHTML = \'<b>Svar p&aring; sp&oslash;rgsm&aring;l:<br>(Nyt svar p&aring; hver linie)</b>\';
        document.all.hojre.innerHTML = \'<textarea name=\"Svar\" wrap=\"VIRTUAL\" rows=\"4\">Med</textarea>\';
        document.all.andet.innerHTML = \'<input type=\"checkbox\" name=\"CheckAndet\" value=\"1\"> Tilf&oslash;j &quot;Andet&quot; felt, st&oslash;rrelse <input type=\"text\" name=\"StrAndet\" size=\"3\" maxlength=\"3\"> max 70\';
        document.all.kommentar.innerHTML = \'<input type=\"checkbox\" name=\"CheckKommentar\" value=\"1\"> Tilf&oslash;j &quot;Kommentar&quot; felt, st&oslash;rrelse <input type=\"text\" name=\"StrKommentar\" size=\"3\" maxlength=\"3\"> max 70\';
    } else if (choice == \'3\') {
        document.all.venstre.innerHTML = \'<b>Svar p&aring; sp&oslash;rgsm&aring;l:<br>(Nyt svar p&aring; hver linie)</b>\';
        document.all.hojre.innerHTML = \'<textarea name=\"Svar\" wrap=\"VIRTUAL\" rows=\"4\">Dig</textarea>\';
        document.all.andet.innerHTML = \'\';
        document.all.kommentar.innerHTML = \'\';
    } else if (choice == \'4\') {
        document.all.venstre.innerHTML = \'<b>Svar p&aring; sp&oslash;rgsm&aring;l:<br>(Nyt svar p&aring; hver linie)</b>\';
        document.all.hojre.innerHTML = \'<textarea name=\"Svar\" wrap=\"VIRTUAL\" rows=\"4\">Du</textarea>\';
        document.all.andet.innerHTML = \'<input type=\"checkbox\" name=\"CheckAndet\" value=\"1\"> Tilf&oslash;j &quot;Andet&quot; felt, st&oslash;rrelse <input type=\"text\" name=\"StrAndet\" size=\"3\" maxlength=\"3\"> max 70\';
        document.all.kommentar.innerHTML = \'<input type=\"checkbox\" name=\"CheckKommentar\" value=\"1\"> Tilf&oslash;j &quot;Kommentar&quot; felt, st&oslash;rrelse <input type=\"text\" name=\"StrKommentar\" size=\"3\" maxlength=\"3\"> max 70\';
    } else if (choice == \'5\') {
        document.all.venstre.innerHTML = \'\';
        document.all.hojre.innerHTML = \'\';
        document.all.andet.innerHTML = \'\';
        document.all.kommentar.innerHTML = \'\';
    } else if (choice == \'6\') {
        document.all.venstre.innerHTML = \'\';
        document.all.hojre.innerHTML = \'\';
        document.all.andet.innerHTML = \'\';
        document.all.kommentar.innerHTML = \'\';
        }
}
</SCRIPT>

Scriptet udskifter html-kode i nogle tabeller afhængig af valget i en dropdown menu.
Det virker, men i det textarea der hedder \"svar\" skrives noget fra en db med ASP <%=getSvar()%> i den oprindelige kode:
<td id=\"hojre\" valign=\"top\" height=\"80\" width=\"50%\">
          <textarea name=\"Svar\" wrap=\"VIRTUAL\" rows=\"4\"><%=getSvar()%></textarea>
        </td>
Problemet er at disse svar forsvinder når jeg vælger noget andet i dropdown menuen.
Hvordan kan jeg beholde svarene selvom jeg skifter punkter i dropdown menuen??

Mvh
Jens
Avatar billede ldanielsen Nybegynder
21. august 2001 - 16:09 #1
document.all.hojre.innerHTML = \'<textarea name=\"Svar\" wrap=\"VIRTUAL\" rows=\"4\">Dig</textarea>\';

erstattes med
var temp
temp = document.formNavn.Svar.value
document.all.hojre.innerHTML = \'<textarea name=\"Svar\" wrap=\"VIRTUAL\" rows=\"4\">\' + temp + \'Dig</textarea>\';
Hvor formNavn erstattes med navnet på formen
Avatar billede ldanielsen Nybegynder
21. august 2001 - 16:09 #2
Undskyld:

document.all.hojre.innerHTML = \'<textarea name=\"Svar\" wrap=\"VIRTUAL\" rows=\"4\">\' + temp + \'</textarea>\';
Avatar billede jems Nybegynder
21. august 2001 - 16:34 #3
Perfekt, tak :)
Point\'e er dine, men kan du hjæplen mig med en lille ting til?

Når siden åbner og choice er fx 5 i dropdownmenuen, skal choice 5 vises med det samme, men det gør den ikke.
Hvordan kan man lave det?

På forhånd tak :)
Mvh
Jens
Avatar billede ldanielsen Nybegynder
21. august 2001 - 17:47 #4
Selv tak.

Jeg kan ikke se hvor choise bliver skrevet. Du siger at den bliver skrevet når siden indlæses, men er det via javascript?

Og hvordan ved \"siden\" at choise skal være fx 5 ?
Avatar billede olebole Juniormester
22. august 2001 - 01:28 #5
<ole>
Prøv:

  <body onload=\"changeStuff(document.formNavn.selectNavn.options[document.formNavn.selectNavn.selectedIndex].value);\">

/mvh
</bole>
Avatar billede olebole Juniormester
22. august 2001 - 01:29 #6
...på én linie, selvfølgelig  :)
Avatar billede jems Nybegynder
22. august 2001 - 11:01 #7
Hej igen :)

Jeg har tilføjet lidt så jeg også kan modtage om checkboxe er checked og hvilken værdi der skal stå i felterne, men den bliver ved med at skrive:
document.form.AndetCheck.value er null eller ikke et objekt.
Det samme sker for de andre tre (bare ikke \"svar\")

var svarTemp
var andetCheckTemp, AndetCheck, AndetStrTemp
var kommentarCheckTemp, KommentarCheck, KommentarStrTemp
svarTemp = document.form.Svar.value

andetCheckTemp = document.form.AndetCheck.value
kommentarCheckTemp = document.form.KommentarCheck.value
AndetStrTemp = document.form.AndetStr.value
KommentarStrTemp = document.form.KommentarStr.value

ASP koden ser således ud:
<%
AndetID = RSSQ3(\"Andet_id\")
  If AndetID = 1 then
    Response.Write \"<input type=\"\"checkbox\"\" name=\"\"CheckAndet\"\" value=\"\"1\"\" checked>\"
    AndetCheck = \"checked\"
  Else
    Response.Write \"<input type=\"\"checkbox\"\" name=\"\"CheckAndet\"\" value=\"\"1\"\">\"
    AndetCheck = \"unchecked\"
End If

AndetStr = RSSQ3(\"Stoerrelse_andet\")
%>
Avatar billede ldanielsen Nybegynder
22. august 2001 - 16:15 #8
Den hedder CheckAndet, ikke AndetCheck!!!

Du har byttet om, også på de andre
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