matheus.labanca Posted February 29, 2012 Report Share Posted February 29, 2012 Boa tarde.estou com um problema em um cod onde o metodo onreadystatechange não funciona no IE.Fala que não foi implementado.alguém pode me ajudar. abaixo o coddocument.write(unescape("%3Cscript src='js/marcaPalavra.js' type='text/javascript'%3E%3C/script%3E")); blog = { id_blog : 1, ajaxObject : null, words : new Array(), // Keywords isIE : true, //Montando objeto XMLHttpRequest getHTTPObject: function() { try { // Firefox, Opera, Safari console.log("firefox, chrome"); blog.isIE = false; return new XMLHttpRequest(); } catch (e) { // Internet Explorer try { console.log("IE 1"); blog.isIE = true; return new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { console.log("IE 2"); blog.isIE = true; return new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) { alert("Your browser does not support AJAX!"); return false; } } } }, //chama o php que pega as palavras do banco sendIdBlog : function(){ blog.ajaxObject = blog.getHTTPObject(); if (blog.ajaxObject != null) { blog.ajaxObject.open("GET", "testephp.php?blog="+blog.id_blog, false); blog.ajaxObject.send(null); blog.ajaxObject.onreadystatechange = ( blog.isIE ) ? blog.setWords //recebe o resultado vindo do php IE : blog.setWords(); //recebe o resultado vindo do php outros navegadores } blog.ajaxObject = null; }, // Recebendo as palavras setWords: function(){ var json_string = ''; if (blog.ajaxObject.readyState == 4) { if(blog.ajaxObject.status == 200) { json_string = blog.ajaxObject.responseText; blog.words = eval(json_string); console.log(blog.words); } } }, //passa o array de palavras a serem grifadas loadWords: function() { blog.sendIdBlog(); return blog.words; } } Quote Link to comment Share on other sites More sharing options...
0 Jonathan Queiroz Posted February 29, 2012 Report Share Posted February 29, 2012 O método onreadystatechange deve ser setado antes de chamar o send.blog.ajaxObject.onreadystatechange = ... blog.ajaxObject.send(null); Quote Link to comment Share on other sites More sharing options...
0 matheus.labanca Posted February 29, 2012 Author Report Share Posted February 29, 2012 Cara não deu certo, continua o erro e quando eu faço isso não funciona mais nos outros navegadores Quote Link to comment Share on other sites More sharing options...
0 matheus.labanca Posted March 1, 2012 Author Report Share Posted March 1, 2012 (edited) Cara valeu a ajuda, apesar de não querer usar uma biblioteca pronta achei melhor usar a prototype, ai deu certo, mas obrigado.Segue o cod pra alguém que tiver o mesmo problema.blog = { id_blog : 1, words : new Array(), // Keywords url : "testephp.php?blog=", //chama o php que pega as palavras do banco sendIdBlog : function(){ var myAjax = new Ajax.Request( blog.url + blog.id_blog, { method: 'get', asynchronous: false, onComplete: blog.setWords }); }, // Recebendo as palavras setWords: function(ajaxObject){ var json_string = ''; json_string = ajaxObject.responseText; blog.words = eval(json_string); }, //passa o array de palavras a serem grifadas loadWords: function() { blog.sendIdBlog(); return blog.words; } } Edited March 1, 2012 by matheus.labanca Quote Link to comment Share on other sites More sharing options...
Question
matheus.labanca
Boa tarde.
estou com um problema em um cod onde o metodo onreadystatechange não funciona no IE.
Fala que não foi implementado.
alguém pode me ajudar. abaixo o cod
Link to comment
Share on other sites
3 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.