Avatar billede melieha Nybegynder
30. januar 2007 - 12:52 Der er 6 kommentarer og
1 løsning

Indsæt variabel i en funktion (Jeg er lost)

Hejsa, jeg har en variabel der hedder "cc".
Den bliver brugt i forbindelse med at jeg tilføjer nye rækker til min tabel, som jeg senere sender ind i min database.
Det virker præcis som det skal og der er intet at klage over :)

MEN! Jeg har et bl.a. datofelt, og bruger "calender popup" fra http://www.mattkruse.com/, det virker også fint i min asp-generede kode - Men jeg kan bare ikke få det til at spille i javascriptet.
Jeg lige pt. Følgende kode til at få kalenderen op:
inp9.onclick=function(){cal4.select(document.forms["tilfkor"].dato2,"anchor2","dd-MM-yyyy");return false;}
Det virker fint så længe jeg har hardcoded "["tilfkor"].dato2", men "dato2" skulle gerne stige hver gang, sådan at der kom til at stå dato3, dato4 osv. Og til at bestemme det nummer skal min variabel "cc" bruges :)

Så det jeg søger er hvordan jeg får min linie til at hedde:
inp9.onclick=function(){cal4.select(document.forms["tilfkor"].dato(CC),"anchor2","dd-MM-yyyy");return false;}
For jeg synes at jeg har prøvet alt hvad jeg kan (Hvilket heller ikke er overraskende meget, indrømmet) :) Det er garanteret simpelt for en som kan finde ud af det ;)

(Datoxx er navnet på det inputfelt som scriptet refererer til).

Venligt mente kommentare mht. Om det kun er IE kompatibelt osv. Frabedes da det på ingen måde hverken er eller bliver aktuelt at bruge det i andet :)

Håber i forstår spørgsmålet :)
Avatar billede jokkejensen Novice
30. januar 2007 - 14:50 #1
et det ikke bare dato+CC

Men jeg er meget i tvivl om det er muligt..

Hvad med :

inp9.onclick=function(){cal4.select(document.getElementsByName('dato' +CC)[0],"anchor2","dd-MM-yyyy");return false;}
Avatar billede roenving Novice
30. januar 2007 - 17:05 #2
document.forms["tilfkor"].elements["dato"+cc] ...
Avatar billede melieha Nybegynder
31. januar 2007 - 08:08 #3
Hep hey :) Roenving's fik jeg til at virke.
Jeg blev dog nødt til at convertere min variabel fra int til en string (DOH), og så spillede det. (Indtil da var der objekt fejl eller noget i den stil)

MEN, det virker dog ikke helt som håbet endnu, for ligenu bliver min dato bare sat ind i det sidste felt på siden (Altså cc, og at den gør det er vel også logisk nok :S), kan jeg gøre så den husker sit nummer på hver af knapperne?

Så knappen til "dato2" stadig bruger feltet "dato2", selvom der er oprettet en knap til "dato3" osv. Istedetfor nu hvor alle bruger "dato(cc)" :S
Avatar billede melieha Nybegynder
01. februar 2007 - 08:52 #4
Hvor utroligt det end lyder så fandt jeg sq selv frem til en løsning her i de tidlige morgentimer :)
inp9.onclick=function(){cal4.select(document.forms["tilfkor"].elements("dato"+((this.name).substring(6))),"anchor"+((this.name).substring(6)),"dd-MM-yyyy");return false;}
blev den endelige funktion.
Roenving, smider du et svar så du kan få nogle points? :)
Avatar billede roenving Novice
01. februar 2007 - 13:10 #5
Velbekomme '-)

-- men du skal nok lige ændre et sæt paranteser til skarpe (og jeg fjernede også nogle overflødige !-)

inp9.onclick=function(){cal4.select(document.forms["tilfkor"].elements["dato"+this.name.substring(6)],"anchor"+this.name.substring(6),"dd-MM-yyyy");return false;}

-- du kan nemlig ikke være sikker på, at browser(n)e (fortsat) vil være så tilgivende overfor forvekslingen af parametre og properties !o]
Avatar billede melieha Nybegynder
01. februar 2007 - 13:34 #6
Det er hermed gjort :) Mange gange tak for hjælpen.
Avatar billede roenving Novice
01. februar 2007 - 13:35 #7
Tak for point ;~}
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