Ciao a tutti,
sto lavorando un po' come tutti con AJAX & co. e ho un problema piuttosto banale. Di solito, per quel che ne so, per verificare che una variabile sia l'oggetto che ti aspetti che sia, si fa sempre:
codice:
if (oggetto.metodo) {
// Esegui codice
}
Utilizzo questa tecnica per uno script che usa XMLHttpRequest e passa la risposta a un metodo. Ora, e' possibile che la risposta sia una risposta normale, o che sia un XML ben preciso, e ho bisogno di eseguire codice diverso a seconda dei casi.
Nello specifico, mi trovo in questa situazione:
codice:
function processXMLHttpResponse(response) {
if (response.getElementsByTagName) {
// Do' per buono che response sia un XMLDocument Object
}
else {
// Lo tratto come un file di testo
}
Il codice sopra funziona perfettamente con Firefox 1.5 e con Opera 8.5, ma con Internet Explorer mi causa un errore e lo script si blocca. L'errore che ottengo e' essenzialmente che il metodo in questione viene (secondo lui) chiamato con il numero sbagliato di parametri.
Se modifico e metto response.getElementsByTagName("quel_che_mi_pare"), funziona anche sotto Internet Explorer (il 6 e il 7/b2 danno lo stesso problema), ma non penso che sia questo il modo di procedere.
Quale altro modo posso avere per verificare che la mia variabile "response" sia effettivamente un oggetto XMLDocument?
Grazie in anticipo per l'eventuale aiuto