Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Tenho o seguinte script JS
<script type="text/javascript" charset="ISO-8859-1" >
$(document).ready(function(){//inicio o jQuery
$("select[name='estados']").change(function(){
var idCombo1 = $(this).val();//pegando o value do option selecionado
//alert(idCombo1);//apenas para debugar a variável
if( idCombo1=='0' )
return resetaCombo('cidades');
$.getJSON( ////esse método do jQuery, só envia GET
'function.inc.php',//script server-side que deverá retornar um objeto jSON
{idCombo1: idCombo1},//enviando a variável
function(data){
//alert(data);//apenas para debugar a variável
var option = new Array();//resetando a variável
resetaCombo('cidades');//resetando o combo
$.each(data, function(i, obj){
option[i] = document.createElement('option');//criando o option
$( option[i] ).attr( {value : obj.id} );//colocando o value no option
$( option[i] ).append( obj.nome );//colocando o 'label'
$("select[name='cidades']").append( option[i] );//jogando um à um os options no próximo combo
});
});
});
});
/* função pronta para ser reaproveitada, caso queira adicionar mais combos dependentes */
function resetaCombo( el )
{
$("select[name='"+el+"']").empty();//retira os elementos antigos
var option = document.createElement('option');
$( option ).attr( {value : '0'} );
$( option ).append( 'Escolha' );
$("select[name='"+el+"']").append( option );
}
</script>
integrado com este php
<?php
header("Content-Type: text/html; charset=ISO-8859-1");
function intGet( $campo ){
return isset( $_GET[$campo] ) ? (int)$_GET[$campo] : 0;
}
function retorno( $id )
{
$sql = "SELECT `id`, `nome`
FROM `bairro`
WHERE `cidade` = {$id} ";
$sql .= "ORDER BY `nome` ";
include "config.php";
//$q = $mysqli->query( $sql );
$q = mysql_query( $sql );
$json = ' [';
//if( $q->num_rows > 0 )
if( mysql_num_rows( $q ) > 0 )
{
//while( $dados = $q->fetch_object() )
while( $dados = mysql_fetch_assoc( $q ) )
{
//$json .= '{"nome'.$campo.'":"'.$dados->nome.'","id'.$campo.'":"'.$dados->id.'"}, ';
$json .= '{"nome":"'.$dados['nome'].'","id":"'.$dados['id'].'"}, ';
}
}
else
$json .= '{"nome": "Não Encontrado"}';
$json .= ']';
return $json;
}
echo retorno( intGet('idCombo1') );
Acontece o erro do titulo quando ao alterar um select no IE 7, queria saber se tem como bloquear esses erros de script do IE 7 ou solucionar o problema ai no caso.
Obrigado
Carregando comentários...