Avatar billede kkd Nybegynder
13. februar 2004 - 16:53 Der er 6 kommentarer og
1 løsning

Tager ikke værdi med til .asp side

Hej...

Følgende script er brugt til at lave en checkboks, der ser ud som jeg vil have den.
Problemet er at værdien "true" eller "false" der gerne skulle figurere i formularfeltet "check1hidden" ikke er der, og derfor ikke kommer med over i det .asp dokument formularen sendes til

I head:
    <script language="JavaScript" type="text/javascript">
    <!--
    function toggle( p_objImage )
    {
        var objHidden = document.getElementById( p_objImage + "hidden" );

        if( p_objImage.src.indexOf( "on.gif" ) > -1 )
        {
            p_objImage.src = "off.gif"
            if( objHidden )
            {
                objHidden.value = "false";
            }
        }
        else
        {
            p_objImage.src = "on.gif"
            if( objHidden )
            {
                objHidden.value = "true";
            }
        }
    }
    //-->
    </script>

I body:
<form method="post" action="send2.asp" name="frm">
...nogle felter...
<img src="off.gif" id="check1" onclick="toggle( this );">
<input type="hidden" id="check1hidden" name="check1hidden">
...flere felter...
</form>

Selve funktionen med at skifte mellem de to billeder (on.gif og off.gif) når man klikker på billedet fungerer, det er bare det med at få værdien med!!!

/kkd :oD
Avatar billede wagner Nybegynder
13. februar 2004 - 17:06 #1
Du bruger billedeobjektet til at finde input feltet med....du skal bruge id fra billede objektet istedet:

var objHidden = document.getElementById( p_objImage.id + "hidden" );

Det vil jeg tro virker ellers prøv med name attributten.
Avatar billede kkd Nybegynder
14. februar 2004 - 15:59 #2
Det virker, men lige et tillægsspørgsmål:

Jeg vil gerne kunne benytte toggle-funktionen far et "alm. link" altså et
href="#" onclick="?"

hvad skal jeg skrive i onclick?
Avatar billede wagner Nybegynder
14. februar 2004 - 19:56 #3
Jeg er ikke helt sikker på hvad du mener, men det du skal være opmærksom på, er om du bruger objekter eller strenge (altså deres id) som parameter. Hvis du skal bruge toggle fra både billeder som oprindeligt, men også fra dit link, så skal toggle ændres så du sender et id som en streng og ikke selve objektet som nu.

Først skal din toggle ændres tilbage til det du havde:

var objHidden = document.getElementById( p_objImage + "hidden" );

Nu skal p_objImage indeholde et id og ikke et objekt.

Derfor skal du kalde funktionen anderledes.

<img src="off.gif" id="check1" onclick="toggle( this.id );">
eller
<img src="off.gif" id="check1" onclick="toggle('check1');">

Et link der skal ændre samme billede kan du så skrive således:
<a href="#" onclick="toggle('check1');">

Jeg håber det var noget i den retning du mente, ellers må du lige beskrive hvad du vil lidt nærmere.

Tak for point.

Wagner
Avatar billede kkd Nybegynder
15. februar 2004 - 11:35 #4
Jeg har en polygon, lagt hen over et billede, som jeg gerne vil have til at toggle, men dette virker ikke:
  <area shape="poly" coords="79,62,69,66,66,71,62,68,60,62,55,61,48,63,47,58,48,48,42,45,40,39,50,39,55,36,70,12,78,10,88,2,86,12,89,28,81,45" href="#Map" onclick="toggle('check1');">
Avatar billede kkd Nybegynder
15. februar 2004 - 11:40 #5
problemet er det samme, hvis jeg laver et billede, med link, f.eks:
<a href="#Map" onClick="toggle('check1');"><img src="kort.jpg" width="40" height="50" border="0"></a>

Jeg får denne fejl:
'scr' er null eller ikke et objekt
i denne linie
if( p_objImage.src.indexOf( "tjekboks-yes.gif" ) > -1 )
Avatar billede kkd Nybegynder
15. februar 2004 - 11:50 #6
Nevermind, jeg har fundet en løsning!
Avatar billede kkd Nybegynder
15. februar 2004 - 11:50 #7
Tak for hjælpen!
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