Sei sulla pagina 1di 2

Ajax

Il primo oggetto chef a una chiamata Ajax chiamato, XMLHttpRequest. E usato per ricevere e inviare XML data o altri tipi, tra I metodi e le propriet che possiede elenchiamo i principali:

XMLHttpRequest
Metodo:
XMLHttpRequest.onreadystatechange() {} : utile fare lovverride di questo metodo nel caso di chiamate ajax asincrone. Se si vuol utilzzare una funzione soltanto se si conclusa la chiamata, bisogna richiamare la funzione dentro lovverride di questo metodo

EventHandler
xmlhttp.addEventListener("progress", updateProgress, false) function updateProgress(evt) { alert(in progress); } xmlhttp.addEventListener(error, failed, false); function failed(evt) { alert(an error was occurred); } xmlhttp.addEventListener(abort, canceled, false); function canceled(evt) { alert(canceled by the user); }

Propriet
XMLHttpRequest.readystate: tale property definisce lo stato della chiamata
o o o o o 0 {Uninitialized} The open method has not been called yet. 1 {Loading} The send method has not been called yet. 2 {Loaded} The send method has been called; headers and status are available. 3 {Interactive} Downloading the response properties hold the partial data. 4 {Completed} All operations are finished.

Chiamata Client :
Crea un oggetto di tipo XMLHttpRequest var xmlhttp=new XMLHttpRequest(); Override evento onreadystatechange, solo nel caso di chiamata asincrona. xmlhttp.onreadystatechange = function () { if (xmlhttp.readyState == {0 a 4} && xmlhttp.status == {200 o altri}) {}} Crezione connessione xmlhttp.open("Metodo","path?queryString",true=async || false=sync); Invio la richiesta al server xmlhttp.send();

Ricezione dati della risposta dal server :


Ricezione di un oggetto XML var xmlResponse = xmlhttp.responseXML; Ricezione di un ogetto di tipo stringa var stringaResponse = xmlhttp.response; Ricezione di un oggetto di tipo JSON, jsonResponse.result restituisce il risultato var jsonResponse = JSON.parse(xmlhttp.response); var stringResult = jsonResponse.result

JQuery Ajax
$.ajax({}) : definisce la chiamata base ajax mediante j query, vi sono degli attributi base da impostare: , url: fa riferimento alla pagina in cui si elabora la richiesta data: i parametri che si vogliono passare al server type: tipo di chiamata (Get, Put, Delete, Post) cache: se si vuole utilizzare la cache per rispondere alla domanda o no (false no,true si) dataType: tipo di dato restituito come risposta - json, xml, html, script, jsonp, or text. succes: metodo richiamato nel caso di successo della chiamata

jQuery Promise
quando una chiamata ajax viene eseguita mediante jquery, viene restituito un oggetto di tipo promise che ci permette di associare un evento nel caso in cui: Always() : la chiamata ajax venga completata indipendentemente dal modo. Done(): la chiamata ajax viene completata con successo status 200 Fail(): la chiamata ajax fallisce Progress(): la chiamata ajax genera una notifica di progresso (working on it)

Potrebbero piacerti anche