Tommy
26-12-2009, 00:47
Salve, sto riscontrando dei problemi con il browser IE8 con un codice ajax.
Con Chrome,Firefox,Safari tutto ok, mentre con il browser Microsoft non parte.
Il problema secondo debug è nella risposta.. responseText ma anche con responseXML.. Ho provato sia post che get e da cmq il problema, che risulta fastidioso perchè cosi non posso sfruttare proprio le funzionalità di ajax.
Il codice è semplice mi collego direttamente al file xml o json e lo ricevo come risposta..(senza pagine php o altro intermediarie)
ajax = create();
ajax.open("POST","prova.json");
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
ajax.onreadystatechange = callback;
ajax.send(null);
function create()
{
var x = null;
if (window.XMLHttpRequest) {
x = new XMLHttpRequest();
}else if (window.ActiveXObject) {
try {
x = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
x = new ActiveXObject("Microsoft.XMLHTTP");
}
}
return x;
}
function callback() {
if (ajax.readyState == 4) {
var json = eval(ajax.responseText); // blocco
}
}
Uso post cosi per non avere il problema della cache, ma è cmq una fase di prova perchè il problema si presenta anche con metodo get e con file xml e quindi realtivo responseXML (senza eval)
Consigli ?
Grazie :)
Con Chrome,Firefox,Safari tutto ok, mentre con il browser Microsoft non parte.
Il problema secondo debug è nella risposta.. responseText ma anche con responseXML.. Ho provato sia post che get e da cmq il problema, che risulta fastidioso perchè cosi non posso sfruttare proprio le funzionalità di ajax.
Il codice è semplice mi collego direttamente al file xml o json e lo ricevo come risposta..(senza pagine php o altro intermediarie)
ajax = create();
ajax.open("POST","prova.json");
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
ajax.onreadystatechange = callback;
ajax.send(null);
function create()
{
var x = null;
if (window.XMLHttpRequest) {
x = new XMLHttpRequest();
}else if (window.ActiveXObject) {
try {
x = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
x = new ActiveXObject("Microsoft.XMLHTTP");
}
}
return x;
}
function callback() {
if (ajax.readyState == 4) {
var json = eval(ajax.responseText); // blocco
}
}
Uso post cosi per non avere il problema della cache, ma è cmq una fase di prova perchè il problema si presenta anche con metodo get e con file xml e quindi realtivo responseXML (senza eval)
Consigli ?
Grazie :)