1
I have the following function:
$(function(){
$("#estadoPaciente").change(function() {
var id = $(this).val();
$.ajax({
type: "POST",
url: "../controller/ajax.selectCidades.php?id="+id,
dataType: "text",
success: function(res) {
$("#cidadePaciente").append(res);
$("#cidadePaciente").selectpicker('refresh');
}
});
});
});
In PHP:
<?php
include_once 'controller.seguranca.php';
include_once 'controller.cidade.php';
$id_estado = $_GET['id'];
$cidade = new CidadeController();
$retornoCidade = $cidade->selectCidadePorEstado($id_estado);
if(count($retornoCidade) > 0)
{
foreach ($retornoCidade as $dados => $value)
{
echo '<option value='.$retornoCidade[$dados]->id_GRcidade.'>'.utf8_encode($retornoCidade[$dados]->nome_GRcidade).'</option>';
}
}
?>
This code is working, the problem is the following:
If the user chooses, for example, the state of Bahia, the cities of the state of Bahia will appear in the <select id="cidadePaciente>
, but if he moves to the state of São Paulo, <select id="cidadePaciente>
continues showing the cities of the state of Bahia, even the user changing the <select id="estadoPaciente>
for the state of São Paulo. (The chosen states are just examples, the problem happens to any chosen state).
Change
$("#cidadePaciente").append(res);
for$("#cidadePaciente").html(res);
– NoobSaibot