Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/01/2012, 22:48
negro1985
 
Fecha de Ingreso: febrero-2009
Ubicación: mexico
Mensajes: 148
Antigüedad: 15 años, 10 meses
Puntos: 1
Pregunta jquery+input dinamicos

Hola a todos compañeros tengo el siguiente problema que no he podido resolver espero puedan ayudarme.

Código HTML:
<script>
$(document).ready(function(){
    $('#forma').submit(function() {
        var data = $(this).serialize();
        $.ajax({
            type: "POST",
            url: "agregar.php",
            data: data,
            success: function(){
            }
        })        
        return false;
    }); 
})
</script> 
Código PHP:
<table>
    <tr>
        <td rowspan="2">MATRICULA</td>
        <td rowspan="2">ALUMNO</td>
        <td colspan="4">PARCIALES</td>
        <td rowspan="2">FINAL</td>
    </tr>
    <tr>
        <td>1</td>
        <td>2</td>
        <td>3</td>
        <td>4</td>
    </tr>
<?php
for($i=0;$i<$total;$i++)
{
    
$id_alumno $lista[$i]['id_alumno'];
    
$matricula $lista[$i]['matricula'];
    
$alumno $lista[$i]['app']." ".$lista[$i]['apm']." ".$lista[$i]['nombre'];
?>
    <tr>
        <td><?php echo $matricula;?></td>
        <td><?php echo $alumno;?></td>
        <td><input type="text" name="calificacion1[]" maxlength="3" style="width: 30px;"/></td>
        <td><input type="text" name="calificacion2[]" maxlength="3" style="width: 30px;"/></td>
        <td><input type="text" name="calificacion3[]" maxlength="3" style="width: 30px;"/></td>
        <td><input type="text" name="calificacion4[]" maxlength="3" style="width: 30px;"/></td>
        <td><input type="text" name="promedio" id="promedio" /></td>
        <input type="hidden" name="id_alumno[]" id="id_alumno" value="<?php echo $id_alumno;?>" readonly="yes" />
    </tr>
<?php
}
?>
    <tr>
        <td colspan="7">            
            <button>GUARDAR</button>
        </td>
    </tr>
</table>

Código PHP:
<?php
require_once("../clases/Calificaciones.php");

$total count($_POST["id_alumno"]);
$id_empleado 2;
$id_grupo_materia $_POST["id_grupo_materia"];
$id_grupo $_POST["id_grupo"];
$tipo1 $_POST["tipo1"];
$tipo2 $_POST["tipo2"];
$tipo3 $_POST["tipo3"];
$tipo4 $_POST["tipo4"];

$calificaciones = new Calificaciones();
for(
$i=0;$i<$total;$i++)
{
    
$id_alumno $_POST["id_alumno"][$i];
    
$calificacion1 $_POST["calificacion1"][$i];
    
$calificacion2 $_POST["calificacion2"][$i];
    
$calificacion3 $_POST["calificacion3"][$i];
    
$calificacion4 $_POST["calificacion4"][$i];

    if(
$calificacion1!=null){
        
$calificaciones->AgregarCalificaciones($id_alumno$id_empleado$id_grupo_materia$id_grupo$calificacion11$tipo1);
    }
    if(
$calificacion2!=null){
        
$calificaciones->AgregarCalificaciones($id_alumno$id_empleado$id_grupo_materia$id_grupo$calificacion22$tipo2);
    }
    if(
$calificacion3!=null){
        
$calificaciones->AgregarCalificaciones($id_alumno$id_empleado$id_grupo_materia$id_grupo$calificacion33$tipo3);
    }
    if(
$calificacion4!=null){
        
$calificaciones->AgregarCalificaciones($id_alumno$id_empleado$id_grupo_materia$id_grupo$calificacion44$tipo4);
    }
    
}
?>
mi problema es que yo quiero sumar los valores de los 4 inputs dinamicos y calcular el promedio de ellos por cada alumno que existe o que llevar determinada materia pero no se como hacerlo, ya que lo intento de esta manera en javascript pero nomas no me sale:

Código HTML:
<javascript>
function CalcularPromedio(){
    var p1 = $("#calificacion1").val();
    var p2 = $("#calificacion2").val();
    var p3 = $("#calificacion3").val();
    var p4 = $("#calificacion4").val();
    var resultado;
    resultado = ((p1+p2+p3+p4)/4);
    
    return resultado;
}
</javascript> 
ese resultado lo asigno a una id de el input que tiene como id=promedio, pero solo me calculo el promedio del primer alumno y de los siguientes nomas no, alguien puede ayudarme, ya lo intente igual calculando mediante php y que me retorne resultado pero tampoco sale, alguien que me ayude por favor, gracias de antemano