这是问题所在,我在html中有多个选择同名,并且当我选择更改时我执行的操作是更新查询,但问题是当我使用其他选择时这不会发送ajax请求。
这个选择是用PHP执行的,这就是为什么我有超过1个选择。
选择HTML:
<?php
$qu_buscarUsr = "SELECT * FROM usuarios WHERE puesto = 2 and estado = 1 order by ap_pat, ap_mat, nombres";
$do_qu_buscarUsr = mysql_query($qu_buscarUsr);
?>
<select name="txtUsuario" class="form-control" id="txtUsuario" required>
<option style="display:none;" value=""><?php echo $NombreCompleto; ?></option>
<?php
if(mysql_num_rows($do_qu_buscarUsr) > 0){
while($dato = mysql_fetch_array($do_qu_buscarUsr)){
?>
<option value="<?php echo $dato['id_user']; ?>"><?php echo $dato['nombres']." ".$dato['ap_pat']." ".$dato['ap_mat']; ?></option>
<?php
}
}
?>
</select>
JS:
$(document).ready(function(){
$("#txtUsuario").change(function() {
var idGra = $("#txtIdGrado").val();
var idGru = $("#txtIdGrupo").val();
var idTur = $("#txtIdTurno").val();
var idUsr = $("#txtUsuario").val();
var dataString = 'idGrado='+idGra+'&idGrupo='+idGru+'&idTurno='+idTur+'&idUser='+idUsr;
$("#mostrar").fadeOut();
$.ajax({ //metodo ajax
type: "POST", //aqui puede ser get o post
url: "ajax/UpdtAsesor.php", //la url adonde se va a mandar la cadena a buscar
data: dataString,
cache: false,
success: function(data)//funcion que se activa al recibir un dato
{
$("#mostrar").fadeIn();
$("#mostrar").html(data);
}
});
});
});
PHP:
<?php
session_start();
include("../php/php_config.php");
if(isset($_SESSION['id_user'])){
if(isset($_POST)){
$idGrado = $_POST['idGrado'];
$idGrupo = $_POST['idGrupo'];
$idTurno = $_POST['idTurno'];
$idUser = $_POST['idUser'];
$sql_check = "UPDATE asesores SET usuario = '".$idUser."' WHERE grado = '".$idGrado."' AND grupo = '".$idGrupo."' AND turno = '".$idTurno."' AND estado = '1'";
$result = mysql_query($sql_check);
if($result){
?>
<div class="alert alert-success animated fadeInDown retraso-1 no-mgn-btm" style="text-align:center;border-radius:3px;margin:0 auto;font-weight:bold;">Se cambio de asesor para el grupo correspondiente</div>
<?php
}
}
}
?>