Besten,

Op een bepaalde pagina heb ik de volgende radiobuttons:

'move' . $i . '[]'
'move' . $i . '[]'
'move' . $i . '[]'

Hierbij is $i een willekeurig getal. Deze radiobuttons wil ik uitlezen dmv javascript. Als je op de submit button drukt van het formulier waarin de radiobuttons staan, wordt er een javascript functie opgeroepen. De willekeurige $i wordt als parameter meegegeven.
Bij het uitlezen van de radiobuttons in de javascript functie dacht ik aan zoiets:

    for (k=0; k<2; k++) {
   		if (document.edit_image.elements[("move" + i)[k]]) { //formuliernaam is edit_image
      		alert("hoi");
   		}
	}


Dit werkt echter niet, geeft een error als "has no properties" op de if-regel.
Hoe moet het wel?

Bvd, RT.
Hier had ik eerst ook problemen mee. Het komt omdat je bij radiobuttons niet simpelweg de value kan aanroepen.

Ik weet niet precies wat je probeert te doen dus ik zal maar een klein voorbeeld geven.

Stel je hebt dit formulier:

<form name="fruit" onSubmit="choice(); return false;">
Wat eet je het liefst? <br/>
<input type="radio" name="keuze" value="appel" />appel<br />
<input type="radio" name="keuze" value="peer" />peer<br />
<input type="radio" name="keuze" value="sinaasappel" />sinaasappel<br />

<br />
<input type="submit" value="Kies" / >

</form>


En dit stukje javascript:

function choice()
{
for (var i=0; i < document.fruit.keuze.length; i++)
   {
   if (document.fruit.keuze[i].checked)
      {
      var choice = document.fruit.keuze[i].value;
      }
   }
if(choice == undefined){
	var choice = 'niets';
 }
alert('Je hebt ' + choice + ' gekozen!');
}


Dan krijg je nadat je wat kiest een alert met daarin je keuze.
Het komt er op neer dat je bij radiobuttons moet loopen om te kijken wat er gekozen is.

Hopelijk kun je dit kleine voorbeeld toepassen op je eigen situatie.
Hardstikke bedankt, maar zoals je kunt zien had ik idd ook al gevonden dat het met een loopje moet.
Het probleem zit het er bij mij in dat in de naam van de radiobutton een willekeurig getal zit. Hoe verwerk ik zoiets in document.form.radiobutton?

Bvd RT.
Ow. Dus als ik het goed begrijp heb je een aantal radio buttons, bijv:
move1[]
move2[]
move3[]

En dan wil je als een van die gesubmit wordt de value hebben?

edit: of je wilt bij de submit van het formulier alle values hebben?
Ik heb een willekeurig getal, dat noemen we even R.
Dan heb ik een aantal radiobuttons, die samen een groep zijn waartussen je dus moet kiezen:

move R []
move R []
move R []

drie stuks dus.
Van deze groep wil ik de keuze weten (de geselecteerde radiobutton), that's it ;)
Kun je aan mijn uitleggen wat je precies probeert te doen op deze manier? Ik begrijp het nut van dat willekeurig getal op t moment niet zo goed. Wellicht kan het veel eenvoudiger.

ps. als je trouwens een groep radiobuttons hebt (met name="bla" en verschillende values)
dan krijg je de values op de volgende manier:
bla[0].value
bla[1].value

anyway, waarvoor is die R dan?

Excuus als ik dom loop te doen ;)




Je loopt niet dom te doen, voor die R heb ik een uitleg ja.
Ik heb een fotoboek gemaakt. In de admin van dat fotoboek kun je een album aanklikken, waarna je een pagina krijgt met een x aantal formuliertjes. Voor elke afbeelding in dat album een formuliertje, hierin kun je dingen aanpassen als commentaar, titel etc. In elk formuliertje staat ook een groepje van die 3 radiobuttons. Het getal R is gelijk aan de plaats van het formulier.

Maargoed, die R geef ik dus door als parameter in de javascript functie.
Via de R weet ik dus op welke afbeelding die radiobuttons, waar ze ook voor mogen zijn, van toepassing zijn.
Ok ik denk dat je ik je begrijp.
Ik heb weer een voorbeeld gemaakt op basis van mijn vorige voorbeeld.
Nu heb ik 3 fruit formulieren:

<form name="fruit1" onSubmit="getchoice(this, 1); return false;">
Wat eet je het liefst? <br/>
<input type="radio" name="keuze" value="appel" />appel<br />
<input type="radio" name="keuze" value="peer" />peer<br />
<input type="radio" name="keuze" value="sinaasappel" />sinaasappel<br />

<br />
<input type="submit" value="Kies" / >

</form>
<form name="fruit2" onSubmit="getchoice(this, 2); return false;">
Wat eet je het liefst? <br/>
<input type="radio" name="keuze" value="appel" />appel<br />
<input type="radio" name="keuze" value="peer" />peer<br />
<input type="radio" name="keuze" value="sinaasappel" />sinaasappel<br />

<br />
<input type="submit" value="Kies" / >

</form>
<form name="fruit3" onSubmit="getchoice(this, 3); return false;">
Wat eet je het liefst? <br/>
<input type="radio" name="keuze" value="appel" />appel<br />
<input type="radio" name="keuze" value="peer" />peer<br />
<input type="radio" name="keuze" value="sinaasappel" />sinaasappel<br />

<br />
<input type="submit" value="Kies" / >


en deze javascript:

function getchoice(form, formid)
{
	var el = form;
for (var i=0; i < el.keuze.length; i++)
   {
   if (el.keuze[i].checked)
      {
      var choice = el.keuze[i].value;
      }
   }
if(choice == undefined){
	var choice = 'niets';
 }
alert('Je hebt ' + choice + ' gekozen in formulier ' + formid + '!');
}


Nu krijg je per formulier een alert met je keuze + het nummer van het formulier.
Ik denk dat dit precies is wat ik bedoel inderdaad, bedankt!
Het enige verschil is dat jij R alleen in de formuliernaam verwerkt, en ik ook in de naam van de radiobuttons. Ik ga er eens mee aan de slag, als het niet lukt hoor je het wel.
Het werkt nog niet, voor form heb ik alleen de naam van het formulier ingevuld.
Maar ik zie jou script nergens iets van document.form.element.blabla
document ergens vergeten?

Bvd RT
Nee, mijn code in mijn laatste post werkt helemaal.
Ik heb 't nog even getest voor je.

Laat je code eens zien.

[edit]hier heb je alles op 1 pagina, kun je zelf even mee testen[/edit]

Reageren