Hola Buenas tardes por favor solicito de su ayuda por favor. La situación es la siguiente: Estoy haciendo un sistema de captura de calificaciones, obtengo el listado de alumnos de la base de datos que contiene matricula, nombre de alumno, dibujo un input para que se almacene la calificación y el tipo de acreditación con otro input de manera dinámica, es decir:
Código PHP:
<tr class="tabfill">
<td class="tabdato" align="left"><input type="text" name="id[]" value="<?php echo $row2[5]?>" /></td> //id en la base de datos del alumno
<td class="tabdato" align="left"><?php echo $row2[0]?></td>
<td class="tabdato" align="left"><?php echo $row2[1]." ".$row2[2]." ".$row2[3]?></td> //nombre del alumno
<td class="tabdato" align="left"><input type="text" name="cal[]" value="" id="cal[]" onchange=onchange="tipoeval();"></td>
<td class="tabdato" align="left"><input type="text" name="evalu[]" value="" id="evalu[]" /></td>
</tr>
Arreglo de calificaciones : cal[]
Arreglo de tipo de acreditación: evalu[]
Hasta aquí todo bien, lo que no he podido hacer y necesito se realice es que al momento de ingresar una calificación del alumno 1 por ejemplo, evalué si la calificación es aprobatoria o reprobatoria y al momento de dar click o quitar el foco del input de cal[] se llene el input de evalu[] con una letra A de aprobado o R de reprobado y que esta acción se vaya ejecutando al momento de capturar cada calificación. No he podido lograr que por medio de Javascript recorra el arreglo de la lista, porque ademas son diferentes listas por lo tanto varia la cantidad de alumnos cada vez.
Tengo el siguiente script en JavaScript pero no me funciona.
Código HTML:
<script type="text/javascript">
// funcion que se ejecuta cada vez que se selecciona una empresa
function tipoeval()
{
if(document.getElementByName('cal').length < 70){
document.getElementByName('evalu').value="A";
}
if(document.getElementByName('cal').length >= 70){
document.getElementByName('evalu').value="R";
}
}
</script>
Por favor si alguien pudiera sugerirme alguna solución se lo agradezco de antemano