ajax html vs xml/json responses - perfomance or other reasons

Posted by pedalpete on Stack Overflow See other posts from Stack Overflow or by pedalpete
Published on 2009-07-18T18:46:48Z Indexed on 2010/05/26 20:01 UTC
Read the original article Hit count: 288

Filed under:
|
|
|

I've got a fairly ajax heavy site and some 3k html formatted pages are inserted into the DOM from ajax requests.

What I have been doing is taking the html responses and just inserting the whole thing using jQuery.

My other option is to output in xml (or possibly json) and then parse the document and insert it into the page.

I've noticed it seems that most larger site do things the json/xml way. Google Mail returns xml rather than formatted html.

Is this due to performance? or is there another reason to use xml/json vs just retrieving html?

From a javascript standpoint, it would seem injecting direct html is simplest. In jQuery I just do this

    	jQuery.ajax({
    			type: "POST",
    		url: "getpage.php",
    		data: requestData,
    		success: function(response){

    		jQuery('div#putItHear').html(response);

    		}

with an xml/json response I would have to do

jQuery.ajax({
    			type: "POST",
    		url: "getpage.php",
    		data: requestData,
    		success: function(xml){
                               $("message",xml).each(function(id) { 
                                message = $("message",xml).get(id); 
                            $("#messagewindow").prepend(""+$("author",message).text()+ 
                           ": "+$("text",message).text()+ 
                             "
"); }); } });

clearly not as efficient from a code standpoint, and I can't expect that it is better browser performance, so why do things the second way?

© Stack Overflow or respective owner

Related posts about html

Related posts about Xml