Avatar billede fojensen Nybegynder
29. august 2003 - 19:40 Der er 2 kommentarer og
1 løsning

input-variabel i funktion

Jeg har et lille test-script der virker, men men ikke helt som jeg vil...

Det skal indgå i en stor formular hvor brugeren skal kunne vise/skjule et billede mange steder i formularen.
( se testeksempel på http://vindehelsinge.dk/test/vis_skjul_1.html )

----------- udklip af fil -----------
<script language="JavaScript">
        <!-- // vis_skjul_funktion
function show_hide12()
{
if (document.forms.form12.activated.checked == true){
document.forms.form12.sideskift.style.visibility = 'visible';
}
else {
document.forms.form12.sideskift.style.visibility = 'hidden';
}
}
        //-->
        </script>

<form name="form12">
<TABLE WIDTH="100%" class="sideskift"><TR><TD>
<input type="checkbox" name="activated" onclick="show_hide12();" checked>
</TD><TD ALIGN="center">
<IMG SRC="img/sideskift_608.gif" BORDER="0" WIDTH="608" HEIGHT="12" ALIGN="center" ALT="fjern flueben for at fjerne sideskift" class="sideskift" ID="sideskift" STYLE="visibility:visible;">
</TD></TR></TABLE>
</form>

----------- /udklip af fil -----------

som det ses i udklippet så hedder formen "form12" og funktionen hedder "show_hide12()".
Tilsvarende kan jeg gøre med "form11" og "form10" hvis jeg laver en funktion til hver - men der må være en smartere måde så funktionnen hedder noget i retningen af:

function show_hide(nummer)
{
if (document.forms.form+'nummer'+.activated.checked == true){
document.forms.form+'nummer'+.sideskift.style.visibility = 'visible';
}
else {
document.forms.form+'nummer'+.sideskift.style.visibility = 'hidden';
}
}

så vil jeg bare kalde funktionen med:
<input type="checkbox" name="activated" onclick="show_hide(11);" checked>

men alt jeg har prøvet virker ikke...
kan nogen hjælpe mig med den rigtige løsning ?

mvh
Folmer
Avatar billede swuppe Nybegynder
29. august 2003 - 20:36 #1
function show_hide(formno)
{
form_name = eval("document.forms.form"+formno);
if (form_name.activated.checked == true){
form_name.sideskift.style.visibility = 'visible';
}
else {
form_name.sideskift.style.visibility = 'hidden';
}
}

så kan du kalde det med formens nummer f.eks. 12
Avatar billede fojensen Nybegynder
29. august 2003 - 21:25 #2
Hej 'swuppe'

Jamen du har jo fuldstændig ret - tak for hjælpen.

Jeg er faktisk lidt hjælpeløs her - jeg har det meget bedre med php, men det er godt at kombinere lidt med javascript...
Avatar billede swuppe Nybegynder
29. august 2003 - 21:27 #3
sandt nok, bruger heller ikke javascript så meget som jeg måske burde, men lige den her havde jeg prøvet før....

Velbekomme!
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