Я пытаюсь проанализировать некоторые XML, хранящиеся в сети, а затем сохранить каждый родительский узел и его дочерние элементы через PHP.Многомерный массив jQuery/AJAX
В качестве теста я создал немного базового XML, так как он очень длинный.
У меня есть немного XML, с которым я пытаюсь достичь основ.
<result>
<name>Person1</name>
<date>2002-05-16</date>
</result>
<result>
<name>Person2</name>
<date>2012-11-06</date>
</result>
Я хочу, чтобы отобразить каждый результат отдельно в следующем HTML:
<body>
<p>XML Split</p>
<div id="contents"></div>
<div id="scroll"><input type="button" id="next" Value=" next in array "/>
<input type="button" id="previous" Value=" previous in array "/></div>
<div id="save"><input type="button" id="one" Value=" Save xml "/>
<input type="button" id="all" Value=" Save all xml "/></div>
<p>XML Split ended</p>
</body>
Для этого я использую следующие JQuery:
$(document).ready(function() {
$.ajax({
type: "GET",
url: "sampleContent.xml",
dataType: "xml",
data: ({'name': name, 'date': date}),
success: function(xml) {
parseXml(xml);
append();
}
});
});
var tmpName;
var tmpDate;
var results = [];
function parseXml(xml) {
$(xml).find('result').each(function() {
tmpName = $(this).find('name').text();
tmpDate = $(this).find('date').text();
output = $(this).val();
if (output != ''){
obj = {};
obj.name = name;
obj.date = date;
obj.output = output;
results.push(obj);
}
});
}
function append() {
$(results).each(function() {
$('#contents').append('<div id="record"><div class="name">' +
tmpName + '</div><div class="date">' +
tmpDate + '</div></div>');
});
}
Я изо всех сил, чтобы получить XML данные для отображения при попытке создания массива. Мне также необходимо изменить некоторые переменные, которые используются в массиве, такие как дата из года-месяца-дня -> день-месяц-год.
Я не уверен, как и почему это происходит неправильно, поэтому были бы признательны за любые предложения по созданию необходимого массива. В качестве примера я пытаюсь использовать how to create multidimensional array/object in jquery and pass via AJAX post, но все еще не так.
Любые предложения приветствуются.
Благодаря
Dan
В вашем файле 'Append()' функция, используйте значение из вашего массива вместо '' tmpName' и tmpDate' – techfoobar