[JS] input met array als naam uitlezen

Pagina: 1
Acties:

  • moozzuzz
  • Registratie: Januari 2005
  • Niet online
een offtopic vraag, maar wel close to... ik maak meestal forms met input-velden ala

HTML:
1
2
3
4
<form name="atestform">
<input name="product_data[something]" ... >
<input name="product_data[somethingelse]" ... >
<input name="product_data[othersomething]" ... ></form>


... omdat deze dan door php als array binnengetrokken kunnen worden. Echter, dit geeft steeds problemen om met js een element aan te spreken, zodat ik uiteindelijk altijd strand op het gebruik van enkele niet-in-de-array-horende-input-elementen of van numerieke forms[0]. Hoe is dat toch mogelijk met naamgeving?
JavaScript:
1
2
3
4
5
6
7
8
<script type="text/javascript"> 
function DoSmtWeird(obj){ 
  var a = document.atestform[1];
  var b = document.atestform.product_data[somethingelse]; // werkt niet
  var c = document.forms['atestform'].[1];
  var d = document.forms['atestform'].product_data[somethingelse]; // werkt niet
}
</script>

Verwijderd

Zo werkt het toch wel?:
JavaScript:
1
var d = document.forms.atestform['product_data[somethingelse]'];

  • André
  • Registratie: Maart 2002
  • Laatst online: 11-02 14:19

André

Analytics dude

Topicstarter
Even afgesplitst omdat het andere topic zo gekaapt werd ;)

En de nette methodes is volgens mij deze:
JavaScript:
1
var d = document.forms["atestform"].elements["product_data[somethingelse]"];