Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Não escreve ajax.responseText


ThinkBrunus

Pergunta

Bom dia!

No seguimento da dificuldade em solucionar o tópico post http://scriptbrasil.com.br/forum/index.php?showtopic=139623, tentei outra alternativa, optando por utilizar AJAX.

Agora tou com dificuldade em escrever os resultados obtidos num select, para terem uma ideia estou a tentar o seguinte:

teste.js

function changeClasse(){
xmlHttp = getXmlHttpObject(); //inicializa variável com identificação do browser
var classe = encodeURI(document.getElementById('combo_classe').value);
nocache = Math.random();
    xmlHttp.open("GET", "/admin/arquivo/teste.php?classe="+classe+"&nocache="+nocache);    
    xmlHttp.onreadystatechange = function(){
        if (xmlHttp.readyState == 4) {    
            alert (xmlHttp.responseText);
            document.getElementById("combo_subclasse").innerHTML = xmlHttp.responseText;
        }
    }
xmlHttp.send(null);
}
response.php
$sql = "SELECT * FROM subclasse WHERE id_classe='".$_GET['classe']."'";
    $query = mysql_query($sql) or die(mysql_error());
        if (mysql_num_rows($query) == 0){
            echo '<option value="0">Sem subclasses!</option>';
        } else {    
                while ($rs = mysql_fetch_assoc($query)){
                    echo '<option value="' . $rs['id_subclasse']. '">' . $rs['designacao']. '</option>';
                }
        }
Pretendo quando seja alterado o combo_classe, seja actualizado a combo_subclasse. Fiz um alert do responseText e ele apresenta os valores correcto, apenas não os escreve na combo! O código parece-me estar correcto... Viva! Indicaram-me que alterasse:
document.getElementById("combo_subclasse").innerHTML = xmlHttp.responseText;
para:
document.getElementById("combo_subclasse").outerHTML = "<select id=\"combo_subclasse\" name=\"combo_subclasse\">"+xmlHttp.responseText+"</select>";

Assim fica a funcionar!

Editado por ThinkBrunus
Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...