A combo "Cidades" esta sendo preenchidas normalmente de acordo com o estado que escolho na combo "Estados".
O problema é quando eu cadastro uma nova Cidade e retorno a esta pagina ao selecionar o estado da nova cidade cadastrada ela nao e carregada na combo, somente as que ja estavam cadastradas.
Isso ocorre somente o IE pois no FireFox a nova cidade cadastrada é listada.
O codigo esta assim:
carrego o JQuery:
<script type="text/javascript" src="../../script/jquery-1.2.6.js"></script>
A funcao que chama as cidades:
function carregaCidades(estado) { $("#cidade").load("ajaxCarregaCidade.php?estado="+estado); $("#cidade").ajaxError(function(request, settings){ $("#cidade").html("Falha ao recuperar as Cidades."); }); }
O html usado:
<tr class="tr-form"> <td class="td-form"> <table border="0" cellpadding="2" cellspacing="2" class="table-form"> <tr class="tr-form"> <td class="td-form"><table border="0" cellpadding="2" cellspacing="2" class="table-form"> <form name="formCidade" id="formCidade" action="" method=""> <tr class="tr-form"> <td align="left" class="td-form" style="text-align: right; padding-left: 31px;">Estado:</td> <td align="left" class="td-form"> <select id="estado" onChange="carregaCidades(this.value);"> <option selected value="0"> -- Selecione o Estado -- </option> <!-- Se o numero de linhas que retornar do banco for maior que 0, ou seja, se tiver coisa no banco, então... --> <?php $estados = mysql_query("SELECT * FROM estados"); if (mysql_num_rows($estados) > 0) { // vai pegar esse objeto e ir duplicando! while($rs = mysql_fetch_object($estados)) {?> <option value="<? echo $rs->id; ?>"><? echo $rs->nome; ?></option> <? }//termina while }//termina if mysql_close($dbcon); ?> </select> </td> </tr> <tr class="tr-form"> <td align="left" class="td-form" style="text-align: right; padding-left: 31px;">Cidade:</td> <td align="left" class="td-form" id="cidade"> <select id="teste"> <option selected value="0"> -- Selecione o Estado -- </option> </select> </td> </tr> <tr class="tr-form"> <td align="center" class="td-form" colspan="2"> <input type="button" name="operation" value="Inserir" class="input-button-form2 inputMedio" onClick="inserirCidade();"/> <input type="submit" name="operation" value="Editar" class="input-button-form2 button-space" /> <input type="submit" name="operation" value="Apagar" class="input-button-form2 button-space" /> </td> </tr> </form> </table></td> </tr>
E o arquivo que busca as Cidades:
<?php require_once('../conect.php'); $estado=$_GET['estado']; ?> <select id="estado"> <option selected value="0"> -- Selecione a Cidade -- </option> <!-- Se o numero de linhas que retornar do banco for maior que 0, ou seja, se tiver coisa no banco, então... --> <?php $cidades = mysql_query("SELECT * FROM cidades WHERE idestado = '$estado'"); if (mysql_num_rows($cidades) > 0) { // vai pegar esse objeto e ir duplicando! while($rscidade = mysql_fetch_object($cidades)) {?> <option value="<? echo ($rscidade->id); ?>"><?php echo ($rscidade->nome); ?></option> <? }//termina while } else { ?><option value="0" selected="selected">Nenhuma cidade Cadastrada</option><? }//termina if mysql_close($dbcon); ?> </select>