HI all,
I use jQuery to parse my xml responses.
I have this xml :
<?xml version="1.0" encoding="UTF-8"?>
<response status="ok">
<client_id>185</client_id>
</response>
And i want to get "client_id" value.
To fix the expected response data type to XML right in your request, set the dataType parameter to "xml". If you don't, jQuery uses the response headers to make a guess.
It is supported on the $.ajax() function as part of the options object, as well as on $.get() and $.post():
jQuery.ajax( options )
jQuery.get( url, data, callback, type )
jQuery.post( url, data, callback, type )
So you could do this:
$.ajax({
type: 'GET',
url: "foo.aspx",
data: {
key: "value"
},
dataType: "xml",
success: function (xml){
var clientid = $(xml).find('client_id').first().text();
alert(clientid);
}
});
Note that as of jQuery 1.5 you can use a nicer version of the above Ajax request:
$.get("foo.aspx", {
key: "value"
})
.done(function (xml){
var clientid = $(xml).find('client_id').first().text();
alert(clientid);
});
Content-Type: header type says text/xml, then jQuery will treat the response data as XML. If it says application/json, jQuery will treat the response as JSON. This works very well. I'm not sure what you mean by "secure".First, make a request for the XML with $.get or however you want. Then:
clientID = $(myXML).find("client_id").text();
just to complement, i you use $.get:
$.get($('file.xml').val(),{ } , doSomethingWithData);
function doSomethingWithData(data) {
$(data).find("marker").each(function() {
var marker = $(this);
alert(marker.attr("lat"));
});
here tpicall used request.responseXML is the data in this case, and you have to encapsulate it in $(data) in order to work (this make me break the head about 3 hours ;S)
// alert(markerh);
}