felps Postado Dezembro 31, 2011 Denunciar Share Postado Dezembro 31, 2011 Eu fiz um código simples, só pra começar a aprender ajax, só que não funciona no firefox. Alguém poderia me ajudar com isso?Index.html<html> <head> <script type="text/JavaScript"> var request = null; function createRequest(){ try{ request = new XMLHttpRequest(); }catch(trymicrosoft){ try{ request = new ActiveXObject("Msxml2.XMLHTTP"); }catch(othermicrosoft){ try{ request = new ActiveXObject("Microsoft.XMLHTTP"); }catch(failed){ request = null; } } } if(request == null) alert("Erro"); } function getWord(){ createRequest(); var url = "script.php"; request.open("GET", url, true); request.onreadystatechange = updatePage; request.send(null); } function updatePage(){ if(request.readyState == 4){ if(request.status == 200){ var tex = request.responseText; document.getElementById("texto").value = tex; } } } </script> </head> <body> <form> <input type="text" name="texto" id="texto" /> <button onclick="getWord();">Enviar</button> </form> </body> </html> script.php <?php echo "Palavra"; ?> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 rickynavas Postado Dezembro 31, 2011 Denunciar Share Postado Dezembro 31, 2011 Eu fiz um código simples, só pra começar a aprender ajax, só que não funciona no firefox. Alguém poderia me ajudar com isso?Index.html<html> <head> <script type="text/JavaScript"> var request = null; function createRequest(){ try{ request = new XMLHttpRequest(); }catch(trymicrosoft){ try{ request = new ActiveXObject("Msxml2.XMLHTTP"); }catch(othermicrosoft){ try{ request = new ActiveXObject("Microsoft.XMLHTTP"); }catch(failed){ request = null; } } } if(request == null) alert("Erro"); } function getWord(){ createRequest(); var url = "script.php"; request.open("GET", url, true); request.onreadystatechange = updatePage; request.send(null); } function updatePage(){ if(request.readyState == 4){ if(request.status == 200){ var tex = request.responseText; document.getElementById("texto").value = tex; } } } </script> </head> <body> <form> <input type="text" name="texto" id="texto" /> <button onclick="getWord();">Enviar</button> </form> </body> </html> script.php <?php echo "Palavra"; ?>Olá, Coloquei um return false, <button onclick="getWord(); return false;">Enviar</button>, assim não atualiza a URL,para mim funcionou assim.. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 felps Postado Janeiro 1, 2012 Autor Denunciar Share Postado Janeiro 1, 2012 Deu certo, obrigado :DMas por que será que acontece isso? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 rickynavas Postado Janeiro 1, 2012 Denunciar Share Postado Janeiro 1, 2012 Coloquei um "return false;", por que a pagina recarregava e apagava os dados de dentro do input.Acredito que haja maneira melhor. rs Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fiote Postado Janeiro 2, 2012 Denunciar Share Postado Janeiro 2, 2012 (editado) Mas por que será que acontece isso?A tag button no firefox é interpretada como um input type='submit'. Logo, ele envia o formulário. Como o seu form não tem um action definido, o firefox envia o formulário para a própria página, dando a impressão que é um refresh.Use input type='button' ao invés de button e seu problema estará resolvido, sem a necessidade do return false. Editado Janeiro 2, 2012 por fiote Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
felps
Eu fiz um código simples, só pra começar a aprender ajax, só que não funciona no firefox. Alguém poderia me ajudar com isso?
Index.html
script.phpLink para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
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.