Minha dúvida está mais para técnica do que lógica…Eu tenho um sistema de requisição AJAX que envia um post com tipo (adicionar ou remover) ; Após o script PHP concluir a ação, no fim da execução eu retorno um echo com o resultado dependendo do tipo do post enviado: echo “adicionado”; ou echo “removido”;
Dai, pego esse echo com o a.reponseText assim:
if(a.responseText == "adicionado") {
getElementById("botao").innerHTML = "<button>Remover</button>";
} else if (a.responseText == "removido") {
getElementById("botao").innerHTML = "<button>Adicionar<button>";
}else {
alert(a.response); Eu mostro o echo se as condições acima não forem satisfeitas
}
O problema é que: o PHP retorna os echos tudo certinho, mas o javaScript executa sempre o alert(a.responseText); ele passa direto para o else da condição e Não alerta os botões…
Outra coisa, se eu trocar de == para = numa das comparações, ai ele executa o alert e depois que eu confirmo o alert, ele altera o botão em que a condição está em = ;
problema persiste tanto no meu locallhost quanto no meu servidor;
Eu não faço ideia do que causa este problema e nem com conserta-lo. Qualquer ajuda eu agradeço muito, já pesquisei bastante mas não encontrei a solução nem nada parecido, sou iniciante na parte técnica do AJAX e das outras linguagens, mas vou passar abaixo algumas especificações técnicas dos scripts que talvez possam ajudar:
- A requisição retorna 200 OK;
- Utilizo setRequestHeader assim" setRequestHeader(“Content-type”, “application/x-www-form-urlencoded”); As vezes eu sinto que o erro sai dessa linha
- Especificações do local host são: Apache/2.4.17 (Win32) OpenSSL/1.0.2d PHP/5.6.23 Server at localhost Port 80
Agradeço desde já qualquer ajuda!!!