Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    pagina con 6 Ajax uguali: 4 funzionano sempre, gli altri solo con Chrome

    Ciao a tutti!
    Su una pagina che ho creato http://www.reghellin.it/obbligazioni...bligazioni.php ho sei elementi aggiornati con ajax nello stesso modo. Tutti funzionano su Chrome ma solo quattro funzionano su IE e su Firefox.
    Ho verificato che i php richiamati rispondessero a dovere, ho provato a cambiare l'ordine delle funzioni, a indirizzare l'output su altri elementi html e funzionano benissimo con chrome mentre con IE e Firefox nulla da fare. La funzione javascript contiene: (accorcio tutto ad una sola chiamata ma come potete vedere dalla pagina linkata le 6 function assegnate ad onreadystatechange differiscono solo per l'id dell'elemento html di destinazione mentre i 5 oggetti xmlhttp successivi al primo sono distinti con una cifra come ad esempio xmlhttp2.)

    codice:
    if (window.XMLHttpRequest) {
    // code for IE7+, Firefox, Chrome, Opera, Safari 
    xmlhttp=new XMLHttpRequest(); 
    } 
    else {// code for IE6, IE5 
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    poi viene definita la funzione
    codice:
    xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("rendimentotesto").innerHTML=xmlhttp.responseText; } }
    e di queste sei funzioni per qualche motivo IE e Firefox ne eseguono solo per 4 mentre vengono tutte eseguite correttamente da Chrome.


    codice:
    xmlhttp.open("GET","graficoobbligazione.php?durata="+durata+"&tassolordoannuo="+tassolordoannuo+"&frequenzacedole="+frequenzacedole+"&nuovotasso="+nuovotasso+"&prezzoattuale="+prezzoattuale+"&restituiscirendimento=",true); xmlhttp.send();


    Qualcuno mi aiuta a capire dove sta l'inghippo?
    Grazie mille!!!
    Fabio
    --
    Think positive!

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    sei chiamate ajax secondo me puoi fare tutto con una chiamata ajax e una funzione calcola (comunque ognuno segue la propria logica) il problema è lang.value non è definito (vedi firebug)
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Moltissime grazie dell'attenzione!
    MALEDIZIONE!!
    Stavo per scrivere "Ma nel form io ho l'input lang...
    codice:
    <input type=hidden name="lang" id="lang" value="IT">
    "
    ma ora mi sono accorto della stupidità dell'errore!!
    Ho scritto lang.value per accedere al valore dell'input lang, ma all'interno della funzione l'oggetto lang non è visibile: devo aggiungerlo ai parametri della chiamata della funzione showGraph così che il valore le sia noto!
    Ecco pare che sia tutto risolto...
    in effetti ero abbastanza sicuro di aver provato con altri browser ed ottenuto ottimi risultati prima di creare le versioni in più lingue... Il problema di sviluppare un'ora oggi, due ore la settimana prossima e mezz'ora tra un appuntamento e l'altro è che si perde il filo facilmente... e non avendo la pratica del professionista si fa pure fatica a ritrovarlo!

    Tu avresti usato una chiamata sola per ottenere tutto il contenuto html in una volta sola?

    Grazie ancora Andrea!
    --
    Think positive!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.