Hola amigos como estan??yo aca con el siguiente problema; tengo un formulario en el cual ingreso el rut del alumno y si este existe se llenan automaticamente los textboxs del formulario, pero solo me funciona con textboxs, ya q tengo un select list (sexo: femenino/masculino) y este al autocargarse los valores de los texboxs del alumno q existe dicho select list no se carga con el valor q traigo desde json y no se pq si en el firebug la consola me muestra los pares propiedad:valor y cada uno viene con su valor correspondiente incluyendo el q le corresponde al select list del sexo... mi code es este:
------------------------------
codigo javascript jquery
------------------------------
Código:
<script type="text/javascript">
$(document).ready(function(){
$("#rutAlumno").blur(function(){
$.ajax({
type: "POST",
url: "../class/Personas.php",
data: "rutAlumno="+$("#rutAlumno").val(),
dataType: "json",
success: function(aResponseData, aStatus, aJqX){
$("#nombreAlumno").val( aResponseData[0].nombreAlumno );
$("#sexoAlumno option:selected").val( aResponseData[0].sexoAlumno);
$("#gradoAlumno").val( aResponseData[0].gradoAlumno );
$("#reparAlumno").val( aResponseData[0].reparAlumno);
$("#mailAlumno").val( aResponseData[0].mailAlumno );
$("#fonoAlumno").val( aResponseData[0].fonoAlumno);
}
})
})
});
</script>
----------------
mi formulario
----------------
Código:
<form name="formIngreAlumno" id="formIngreAlumno" action="ingresoFuncionario.php" method="post">
<br /><br /><br /><br />
<fieldset>
<center><legend><h2>Ingreso Datos Alumno Funcionario</h2></legend></center>
<br /><br /><br /><br />
<div class="fila">
<span class="etiqueta"><label for="rutAlumno">R.U.T Alumno</label></span>
<span class="form-el"><input id="rutAlumno" name="rutAlumno" maxlength="12" type="text" /></span> <span class="error"></span>
</div>
<div class="fila">
<span class="etiqueta"><label for="nombreAlumno" maxlength="300" >Nombre Alumno</label></span>
<span class="form-el"><input id="nombreAlumno" name="nombreAlumno" type="text" /></span> <span class="error"></span>
</div>
<div class="fila">
<span class="etiqueta"><label for="sexoAlumno">Sexo Alumno</label></span>
<span class="form-el"><select id="sexoAlumno" name="sexoAlumno">
<option value="">Seleccione...</option>
<option value="1">Masculino</option>
<option value="2">Femenino</option>
</select></span> <span class="error"></span>
</div>
<div class="fila">
<span class="etiqueta"><label for="gradoAlumno">Grado Alumno</label></span>
<span class="form-el"><input id="gradoAlumno" name="gradoAlumno" maxlength="2" type="text" /></span> <span class="error"></span>
</div>
<div class="fila">
<span class="etiqueta"><label for="reparAlumno">Reparticion Alumno</label></span>
<span class="form-el"><input id="reparAlumno" name="reparAlumno" maxlength="12" type="text" /></span> <span class="error"></span>
</div>
<div class="fila">
<span class="etiqueta"><label for="mailAlumno">Mail Alumno</label></span>
<span class="form-el"><input id="mailAlumno" name="mailAlumno" maxlength="100" type="text" /></span> <span class="error"></span>
</div>
<div class="fila">
<span class="etiqueta"><label for="fonoAlumno">Fono Alumno</label></span>
<span class="form-el"><input id="fonoAlumno" name="fonoAlumno" maxlength="10" type="text" /></span> <span class="error"></span>
</div>
<input type="hidden" name="grabar_alumnofun" value="si"/>
<div class="fila">
<span class="etiqueta"></span><span class="form-el"><input id="Ingresar" name="Ingresar" type="submit" value="Ingresar" /></span>
</div>
</fieldset>
<?php
if(isset($_POST["grabar_alumnofun"]) && $_POST["grabar_alumnofun"]== "si")
{
$nuevoAlumFun = new Ingresos();
$nuevoAlumFun->nuevoAlumnoFun($_POST['rutAlumno'], $_POST['codFunAlumno'], $_POST['nombreAlumno'], $_POST['sexoAlumno'], $_POST['gradoAlumno'], $_POST['reparAlumno'] , $_POST['mailAlumno'],$_POST['fonoAlumno'], $_POST['estadoAlumno']);
}
?>
</form>
-----------------
y mi clase PHP
-----------------
Código:
<?php
require_once("Conectar.php");
class Personas {
var $nombreAlumno;
var $sexoAlumno;
var $gradoAlumno;
var $reparAlumno;
var $mailAlumno;
var $fonoAlumno;
function __construct($nombreAlumno, $sexoAlumno, $gradoAlumno, $reparAlumno, $mailAlumno, $fonoAlumno){
$this->nombreAlumno = $nombreAlumno;
$this->sexoAlumno = $sexoAlumno;
$this->gradoAlumno = $gradoAlumno;
$this->reparAlumno = $reparAlumno;
$this->mailAlumno = $mailAlumno;
$this->fonoAlumno = $fonoAlumno;
}
}
$rutAlu = $_POST['rutAlumno'];
$sqlAlumnosFun = mysql_query("SELECT * FROM ALUMNO WHERE RUT_ALUMNO = '$rutAlu'",Conectar::con());
//creo el array de los elementos a devolver
$arrayAlumnos = array();
while($result = mysql_fetch_array($sqlAlumnosFun)){
array_push($arrayAlumnos, new Personas(utf8_encode($result["NOMBRE_ALUMNO"]), $result["SEXO"], $result["GRADO_ALUMNO"], $result["REPARTICION_ALUMNO"], $result["MAIL_ALUMNO"], $result["FONO_ALUMNO"]));
}
echo $retornaAlumFun = json_encode($arrayAlumnos);
?>
como les cuento arriba me muestra todos los datos en sus respectivos textboxs pero el valor q le corresponde al select list no me lo muestra y lo estoy recibiendo asi:
$("#sexoAlumno option:selected").val( aResponseData[0].sexoAlumno);
como deberia recibirlo para q me muestre el valor q traigo desde json? en q estoy fallando amigos??? porfavor agradeceria mucho su ayuda.... de antemano muchas gracias y quedo atento a sus respuestas :D bye