Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Paulo Vitor_156848

Combobox simples, não funciona no ie7

Recommended Posts

Primeiramente, obrigado a todos pela atenção.

Estou com um pequeno problema... tenho um combobox que funciona em todos os navegadores, exceto na versão 7 do ie...

Sinceramente, não sei mais o que fazer para funcionar no i7.. já tentei recriar e fazer outros tipos também, mas sem sucesso...

 

Abaixo o código:

cadastro.php

/*função que seleciona a cidade*/
function CarregaCidades(codEstado){
   if(codEstado){
var myAjax = new Ajax.Updater('cidadeAjax','carrega_cidadeCad.php?codEstado='+codEstado,
      {
method : 'get',
      });
   }

}


<!-- O primeiro select -->
<td align="left" width="18%"><u>Estado:</u></td>
<td>
   <select name="estado" onChange="CarregaCidades(this.value)" style="width:135px">

<option value="">Selecione um estado</option>

<?php 
	$arquivo = fopen('UF.txt','r');

	while(!feof($arquivo)) {

		$link = fgets($arquivo);
		echo'<option value="'.$link.'" style="width:190px">'.$link.'</option>';

	}	
	fclose($arquivo);

?>
   </select>
</td>
<tr>
<td align="left" width="18%"><u>Cidade:</u></td>
<td>
<div style="margin-left: -3px;">
<table width="100%">
<tr>
 <td width="35%">
 <div id="cidadeAjax">
 <select id="cidade" name="cidade" style="width:136px" onchange="muda();">

 <option value="">Selecione uma cidade</option>	

  </select>
   </div>
    </td>
     <td width="65%">
      <input type="text" name="cidadeNovo" id="cidadeNovo" value="" style="display:none;">
     </td>
    </tr>
   </table>		
  </div>
 </td>
</tr>
<tr>
     <td align="left" width="18%"><u>Bairro:</u></td>
<td>

      <select id="bairro" name="bairro" style="width:136px" onchange="muda2();">
               <option value="">Selecione um bairro</option>
               <option value="">Novo Bairro</option>
      </select>
     </div>
    </td>
   <td width="65%">
  <input type="text" name="bairroNovo" id="bairroNovo" value="" style="display:none;">
</td>
     </tr>
   </table>		
 </div>
</td>          
</tr>

 

carrega_cidadeCad.php


<?php header("Content-Type: text/html; charset=ISO-8859-1",true);?>
<?php 
include ("conexao.php");
include ("includes/funcoes.php");
?>
<script type="text/javascript" src="prototype.js"></script>


<script language="javascript">
/*função para carregar o bairro*/
    function CarregaBairro(codCidade){
if(codCidade){
	var myAjax = new Ajax.Updater('bairroAjax','carrega_bairroCad.php?codCidade='+codCidade,
      {
	method : 'get',
       });
}
    }
</script>

<?php 
  $codEstado = retirar_acentos($_GET['codEstado']);
?>

<select name="cidade" id="cidade" style="width:136px" onchange="CarregaBairro(this.value); muda()">
<option value="" selected>Selecione uma opção</option>
<?php
$sql = "SELECT DISTINCT Cidade FROM Empresa WHERE UF='$codEstado' ORDER BY Cidade";
$exec=odbc_exec($con,$sql);
while(odbc_fetch_row($exec)){
$i++;
echo '<option value="'.odbc_result($exec,"Cidade").'" >'.odbc_result($exec,"Cidade").'</option>';
}?>
<option value="">Nova Cidade</option>
</select>

 

carrega_bairroCad.php

/*select bairro*/
<?php header("Content-Type: text/html; charset=ISO-8859-1",true);?>
<?php include ("conexao.php");
include ("includes/funcoes.php");
$codCidade = retirar_acentos($_GET['codCidade']);

if ($codCidade == ""){
?> 

<select name="bairro" id="bairro" style="width:135px" onchange="muda2();">
<option value="">Novo Bairro</option>
</select>
<?php } else {?>
<select name="bairro" id="bairro" style="width:136px" onchange="muda2();">
<option value="" selected>Selecione uma opção</option>
<?php
echo $_SESSION['cidade'];
$sql = "SELECT DISTINCT Bairro FROM Empresa WHERE Cidade='$codCidade' ORDER BY Bairro DESC";
$exec= odbc_exec($con,$sql);
$i=0;
while(odbc_fetch_row($exec)){
$i++;
echo odbc_result($exec,"Bairro");
echo '<option value="'.odbc_result($exec,"Bairro").'" >'.odbc_result($exec,"Bairro").'</option>';
}?>
<option value="">Novo Bairro</option>
</select>
<?php }?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você utiliza onchange no seu code e é ai o problema pois ele geralmente gera erro no ie7 e firefox, de uma procurada por "onchange ie7 bug" e veja o tanto de reclamações, de uma procurada, certamente vai achar um resultado que te ajude nessa.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você utiliza onchange no seu code e é ai o problema pois ele geralmente gera erro no ie7 e firefox, de uma procurada por "onchange ie7 bug" e veja o tanto de reclamações, de uma procurada, certamente vai achar um resultado que te ajude nessa.

 

Beleza, vou pesquisar... desconhecia esse bug..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Certo, especifique mais detalhadamente oque esta ocorrendo, ele não esta chamando os dados??? o erro ocorre em que etapa do processo??? como deveria agir???

 

Aposto 10 mangos que é no onChange mais precisamos saber oque de fato ocorre e aonde e como gera o problema.

Compartilhar este post


Link para o post
Compartilhar em outros sites

É mais fácil utilizar um framework como Jquery, que já tem métodos compatíveis com os navegadores, segue o link para um post sobre o assunto, espero que te ajude.

 

Link não autorizado removido

Compartilhar este post


Link para o post
Compartilhar em outros sites
Certo, especifique mais detalhadamente oque esta ocorrendo, ele não esta chamando os dados??? o erro ocorre em que etapa do processo??? como deveria agir???

 

Aposto 10 mangos que é no onChange mais precisamos saber oque de fato ocorre e aonde e como gera o problema.

 

Então P@trique, é exatamente no onChange, como posso dizer, ele não funciona... e dessa forma, não passa os parametros para as outras páginas...

 

 

É mais fácil utilizar um framework como Jquery, que já tem métodos compatíveis com os navegadores, segue o link para um post sobre o assunto, espero que te ajude.

 

Combobox simples Jquery PHP MySql

 

Vou tentar com o Jquery FernandoPHP... espero ter sucesso dessa vez...

 

Obrigado pela ajuda... qualquer coisa volta a incomodá-los.. hahaha

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.