[Javascript] Radiogroup uitlezen met array als naam

Pagina: 1
Acties:

  • Reveller
  • Registratie: Augustus 2002
  • Laatst online: 05-12-2022
Ik heb het volgende form met javascript functies:
HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<script>
function getRadioValue(what) {
  var returnWaarde = false;
  for (i = 0; i < what.length; i++) {
    if (what[i].checked == true) {
      returnWaarde = what[i].value;
    }
  }
  return returnWaarde;
}

function check() {
  alert(getRadioValue(document.forms[0].data[action]))
}
</script>
  

<form method="post" action="">
  <input id="edit" name="data[action]" type="radio" value="edit">edit<br>
  <input id="add" name="data[action]" type="radio" value="add">add<br>
  <input id="del" name="data[action]" type="radio" value="del">del<br>
  <input type="button" value="OK" onclick="check();">
</form>


Als ik op OK klik, krijg ik de foutmelding: 'action is undefined'. Ik heb daarom document.forms[0].data[action] al veranderd in document.forms[0].data[] en in document.forms[0].data, maar dat werkt ook niet.

Het probleem is: dit scriptje zou wel werken als de naam van de radio buttons bv 'action' zou zijn. Maar het loopt spaak op het feit dat ik een array gebruik. Toch zou ik graag op deze manier blijven werken. Is er een oplossing om het javascriptje toch aan de praat te krijgen? :|

"Real software engineers work from 9 to 5, because that is the way the job is described in the formal spec. Working late would feel like using an undocumented external procedure."


Verwijderd

forms[0].elements['data[action]']

en volgende keer wel de search gebruiken

Verwijderd

document.forms[0].elements['data[action]'] zou de correcte notatie moeten zijn.

[ Voor 9% gewijzigd door Verwijderd op 09-08-2004 17:57 ]