XML-ответ обрабатывается так же, как и любой другой тип данных.Пока вы указываете, какого типа он должен ожидать.
Этот вопрос показывает, как анализировать XML в JQuery.XML обрабатывается как любой другой элемент.
Вот пример.
$.ajax({
url:"xml.xml",
dataType: "xml",
type:"POST",
success: function(response){
var $events = $(response).find("event");
$events.each(function(index, event){
var $event = $(event),
addData = [];
$event.children().each(function(i, child){
addData.push($(child).text());
});
dataTable.fnAddData(addData);
});
}
});
Если вы не хотите проходить по всем дочерним элементам в каждом событии, выможно просто назначить их вручную
$.ajax({
url:"xml.xml",
dataType: "xml",
type:"POST",
success: function(response){
var $events = $(response).find("event");
$events.each(function(index, event){
var $event = $(event),
addData = [];
addData.push($event.children("processId").text());
addData.push($event.children("batchId").text());
addData.push($event.children("user").text());
addData.push($event.children("participant").text());
addData.push($event.children("activity").text());
addData.push($event.children("note").text());
addData.push($event.children("createdOn").text());
addData.push($event.children("createdBy").text();
dataTable.fnAddData(addData);
});
}
});
Убедитесь, что массив, отправляемый в fnAddData, содержит столько же элементов, сколько заголовки таблицы.
Редактировать
После проверки HTMLи Javascript, я не могу воспроизвести проблему.
Проверьте этот тестовый пример
Я собираюсь угадать и сказать, что есть еще код, который выне включает, это влияет на результат.
Я, вероятно, должен отметить, что встроенные функции javascript обычно не одобряются в кругах webdev.Вместо этого вы должны попытаться отделить ваш код JavaScript от HTML-кода, как в последнем примере.
Используйте $("#form").submit(function{...});
вместо встраивания функции в ваш HTML.
Читайте ранняя регистрация обработчика событий против традиционная модель регистрации событий