/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
Gennemløb af array og udhentning af værdie~
Fra : Joergen Ramskov


Dato : 01-02-02 12:31

Hejsa,

Jeg er newbie indenfor JavaScript, og har følgende behov:
Jeg har en side med en form. Formen kan have et vilkårligt antal
"selects" (dropdown bokse) der *skal* udfyldes af brugeren ved submit.

Siden genereres serverside (servlets) men validering af form dataene
skal nu ske client side. Jeg kender derfor navnene på de dropdown bokse
jeg skal tjekke og har lagt dem i et hidden field (kaldet
"selectNames"). Jeg benytter split funktionen til at smide disse navne
ind i et array som jeg så gennemløber.

Problemet er: Hvorledes får jeg fat i den enkelte dropdown boks og
tjekker om brugeren har besvaret (ændret) den. Alle dropdown boksene har
en default værdi/value sat til "blank" - der skal vælges noget andet en
blank. Problemet ligger altså i linien jeg har udkommenteret med ">>".

function validate(fld) {
if(document.forms[0].selectNames.value!=null){
var selects=document.forms[0].selectNames.value;
var selectArray = selects.split(",");

for (var loop=0; loop < selectArray.length; loop++) {
>> if (document.forms[0]."selectArray[loop]"
..toString()).value=="blank") {
alert("Du skal besvare dette spørgsmål!")
}
}

Jeg skal ligeledes have lavet dette så det fungerer med textareas.

Hvordan gør jeg det? Er der en nemmere/bedre måde at gøre det på? Jeg
kan sagtens smide nogle flere "hidden fields" med forskellige
informationer ind på siden, hvis det vil gøre det lettere/smartere.


--
Jørgen Ramskov - Folding for the Cause!
http://arstechnica.com/etc/dcteams/dc_teams.html




 
 
HarleyDK (01-02-2002)
Kommentar
Fra : HarleyDK


Dato : 01-02-02 13:48

> Problemet er: Hvorledes får jeg fat i den enkelte dropdown boks og
> tjekker om brugeren har besvaret (ændret) den. Alle dropdown boksene har
> en default værdi/value sat til "blank" - der skal vælges noget andet en
> blank. Problemet ligger altså i linien jeg har udkommenteret med ">>".

Hej Jørgen,

>> if (document.forms[0]."selectArray[loop]".toString()).value=="blank")
{
alert("Du skal besvare dette spørgsmål!")
}

Jeg går ud fra at "blank" default-værdien er det øverste element i
listboxen, og jeg ved at en select har en selectedIndex-attribut. Mon ikke
der kan benyttes noget i retning af dette,

>> if ( document.forms[0]."selectArray[loop]".selectedIndex = 0 )
{
alert("Du skal besvare dette spørgsmål!")
}

Se evt.
http://msdn.microsoft.com/workshop/author/dhtml/reference/properties/selecte
dindex.asp

Håber det hjælper,

Morten.




Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408929
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste