Tjena, <b><input type="hidden" name="anstalld_id[]" id="anstalld_id[]" value="<?php echo $form_antalld->id;?>" /></b>Loopa igenom arrayer
Har ett formulär med diverse fält, tex: Namn, arbetade timmar osv.
Dessa fält loopas upp genom anställda som ligger i databasen. Skapar arrayer med svaren från formuläret som jag sedan loopar upp och sparar i databasen. Använder mig av php.
PHP-kod:
for ($i = 0; $i < sizeof($anstalld_id); $i++) {
insert osv.....
Nu vill jag validera det här formuläret med hjälp av javascript men lyckas inte loopa upp de anställdas fält för att validera dessa.
Tex. så här kan ett fält se ut:
Kod:
<input type="hidden" name="anstalld_id[]" id="anstalld_id[]" value="<?php echo $form_antalld->id;?>" />
När man klickar på submit knappen så skickar jag in till en javascriptfunktion där jag då vill ta emot dessa värden och validera. Men hur tar jag emot arrayerna?
Har försökt med något sånt här..
Kod:
anstalld_array = document.form.getElementById(anstalld_id).length;
for (i=0;i<=anstalld_array.length;i++){
MVH
PatrikSv: Loopa igenom arrayer
Du får inte sätta samma id (anstalld_id[]) på flera element.
<b>anstalld_array = document.form.getElementById(anstalld_id).length;</b>
Fälten heter inte anstalld_id, de heter anstalld_id[]. Dessutom skall argumentet till getElementById() vara en sträng.
Pröva med
<form name="the_form">
<input type="hidden" name="anstalld_id[]" id="anstalld_id[]" value="<?php echo $form_antalld->id;?>" />
</form>
<script type="text/javascript">
anstalld_array = document.forms['the_form'].elements['anstalld_id[]'];
...
</script>