Не будет никакого хита производительности, оба оператора совершенно равны.
HTH
Мне нужен настоящий XML в виде строки
Вы хотите, чтобы он был в виде простого текста, а не объекта XML? Измените dataType
с 'xml'
на 'text'
. Дополнительные параметры см. В документации $. Ajax .
Если вы хотите и то, и другое, получите ответ как XML-документ и как строку. У вас должна быть возможность сделать
success: function(data){
//data.xml check for IE
var xmlstr = data.xml ? data.xml : (new XMLSerializer()).serializeToString(data);
alert(xmlstr);
}
. Если вы хотите, чтобы это было строкой, почему вы указываете dataType: xml
, тогда dataType: text
не будет более подходящим?
Если вам нужна только строка, представляющая xml, возвращенный из jquery, просто установите тип данных на «текст», а не пытайтесь разобрать xml обратно в текст. Следующее должно просто вернуть вам необработанный текст из вашего вызова ajax:
$.ajax({
url: 'document.xml',
type: 'GET',
dataType: 'text',
timeout: 1000,
error: function(){
alert('Error loading XML document');
},
success: function(xml){
// do something with xml
}
});