Joomla.it Forum

Joomla! 2.5 (versione con supporto terminato) => Joomla! 1.6/1.7/2.5 => : vezzi 04 Feb 2011, 14:43:21

: Ajax.open non funziona??
: vezzi 04 Feb 2011, 14:43:21
Ciao a tutti sono nuovo del forum e anche nell`uso di Joomla 1.6.

volevo chiedervi un aiuto.
Ho creato il template semplicissimo MENU e BODY, nel menu ho inserito un modulo creato da me che con una funzione JS (onclick) chiama la funzione ajax la quale crea la variabile XMLHttpRequest. fin qua tutto bene mi ritorna l`oggetto XMLHttpRequest, quando pero faccio  variabile.open('GET', '/Joomla/index.php?option=com_content&view=article&id=12',true) mi ritorna UNDEFINED   e successivemente mi da errore su readyState.

secondo voi cosa puo essere?

Mattia
: Re:Ajax.open non funziona??
: 56francesco 04 Feb 2011, 14:47:08
pardon, non avevo notato la sezione ed ho spostato  anche se non dovevo.
: Re:Ajax.open non funziona??
: vezzi 04 Feb 2011, 15:41:26
a qualcuno va XMLHttpRequest.open()?

potrebbe essere un impostazione di joomla sui permessi che mi restituisce UNDEFINED, ho provato anche con l`intero url  http://.....  ma non funziona
: Re:Ajax.open non funziona??
: vezzi 07 Feb 2011, 10:24:28
Questo e` il codice se puo aiutare:

function changeText(){

    var ajax=assegnaXMLHttpRequest();
    elemento = document.getElementById("ajaxText");
     if(ajax){
            ajax.open("POST", "/Joomla16/index.html" , true);
            ajax.setRequestHeader("connection", "close");
            ajax.onreadystatechange = function() {

      // verifica dello stato
      if(ajax.readyState === readyState.COMPLETATO) {
        // verifica della risposta da parte del server
        if(statusText[ajax.status] === "OK"){
          // operazione avvenuta con successo
              window.alert('ok');
          elemento.innerHTML = ajax.responseText;}
        else {
          // errore di caricamento
          elemento.innerHTML = "Impossibile effettuare l'operazione richiesta.
";
          elemento.innerHTML += "Errore riscontrato: " + statusText[ajax.status];
        }
      }
    }
    // invio richiesta
    ajax.send(null);
  }
}



Mentre il menu funziona cosi:

<ul class="top menu" id="Home">
            <li id="li_1" class='top_menu' onclick="changeText();">Test</li>
</ul>
: Re:Ajax.open non funziona??
: dazo 08 Feb 2011, 15:33:20
Non sono un esperto di ajax però se devo scrivere qualche cosa del genere con mootools io la scriverei così:

var myAjax = new Request({
                               method: 'post',
                               url: myUrl,
                               onSuccess: function(response){
                               // codice
               }
            });
            myAjax.send();

spero ti possa essere utile...