Avatar billede challenge Praktikant
14. marts 2009 - 16:01 Der er 9 kommentarer og
1 løsning

bruge AJAX som switch

Hej alle,

I processen at lave en side, er jeg rendt ind i et problem. Jeg ønsker at have en knap der skal operere som en slags switch - altså en knap der skifter mellem to baggrundsbilleder hver gang den trykkes (og i processen sender nogle data til en database).

Mit problem er, at switchen kun vil gå den ene vej, nemlig til "on". I min xhr.readyState == 4 har jeg følgende:

if(document.getElementById("submitForm").style.background == 'url(images/icons/cookie.jpg)')
{
    document.getElementById("submitForm").style.background = 'url(images/icons/cookie_green.jpg)';   
} else
{
    document.getElementById("submitForm").style.background = 'url(images/icons/cookie.jpg)';
}

Hvorfor vil min switch ikke skifte til "off" når jeg trykker?

Hvis I mangler informationer, bed da gerne om disse.
Avatar billede erikjacobsen Ekspert
14. marts 2009 - 16:07 #1
Prøv i en

  alert(document.getElementById("submitForm").style.background)

at se hvad der faktisk står.
Avatar billede challenge Praktikant
14. marts 2009 - 16:21 #2
Hej Erik,

Hmm... Alert-en fremkommer ikke når jeg trykker - kan det have noget at gøre med if-sætningen der ikke virker, af en eller anden grund?
Avatar billede jensgram Nybegynder
14. marts 2009 - 16:29 #3
Ja, indsæt Eriks alert() lige før din if (...)
Avatar billede challenge Praktikant
14. marts 2009 - 16:47 #4
Første gang jeg trykker (hvor switch-en endnu ikke har væren igennem AJAX) viser alert-en intet. Trykker jeg på knappen igen siger alert-en
transparent url(images/icons/cookie_green.jpg) repeat scroll 0% 0%
Avatar billede erikjacobsen Ekspert
14. marts 2009 - 16:53 #5
Du skal regne med at du ikke nødvendigvis med JS kan aflæse disse attributter, hvis de ikke er sat med JS.

Og som du nu ser, så skal du skrive noget kryptisk, hvis det skal virke.

Den lidt bedre løsning vil være at have en simpel JS-variabel:

  var billede = 1;

og sætte den til at skifte mellem fx 1 og 2, når du skifter billede. Så kan du nøjes med at aflæse den, for at se hvilket billede der er aktivt.
Avatar billede challenge Praktikant
14. marts 2009 - 17:04 #6
Ok, det vil jeg prøve - mange tak for hjælpen :)

Smid gerne et svar :)
Avatar billede erikjacobsen Ekspert
14. marts 2009 - 17:12 #7
Jeg samler slet ikke på point, tak.

Men lad os lige høre, om du får det til at virke.
Avatar billede challenge Praktikant
14. marts 2009 - 21:24 #8
Puha... Det blev noget værre rod, men jeg fik den til sidst. Det bliver dog nok for besværligt at forklare. Tak for hjælpen, trods alt!

Jens: smid gerne et svar!
Avatar billede jensgram Nybegynder
15. marts 2009 - 09:23 #9
Nej, skam ikke for så lidt :)
Avatar billede challenge Praktikant
15. marts 2009 - 09:32 #10
As you please :)
- 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