javascript/jquery中从xml数据填充对象的最佳方法
我是js的初学者。我正在从服务器中提取一个xml(没有可用的json),并希望在网页上显示它。我得到了请求,并且我设法访问了xml树中的数据。两者都使用jquery。这些是国会的数据,议员的数据。我想制作一组Congressman对象,并用xml中的数据填充它们。它们是这样的: 在xml中:javascript/jquery中从xml数据填充对象的最佳方法,javascript,jquery,xml,Javascript,Jquery,Xml,我是js的初学者。我正在从服务器中提取一个xml(没有可用的json),并希望在网页上显示它。我得到了请求,并且我设法访问了xml树中的数据。两者都使用jquery。这些是国会的数据,议员的数据。我想制作一组Congressman对象,并用xml中的数据填充它们。它们是这样的: 在xml中: <congressman> <name> jhon </name> . . a lot of data .<id>1234</id>
<congressman>
<name> jhon </name>
.
. a lot of data
.<id>1234</id>
</congressman>
并将节点作为构建新国会议员的参数传递?
或者我需要在每个议员返回的数据中逐一循环?
比如:
您可以在jQuery中使用
每个[1]来迭代所选元素
比如说
var congressmanArray = []; // for stored congressman data
$(root).find('congressman').each(function(){
// collected data
var cman = {};
cman.id = $(this).find('id').text();
cman.name = $(this).find('name').text();
// ....
congressmanArray.push(cman);
});
最后,您将获得JSON格式的国会议员数据
因此,如果您的数据只有一个级别的子级,那么
var congressmanArray = []; // for stored congressman data
$(root).find('congressman').each(function(){
// collected data
var cman = {};
$(this).find('>*').each(function(){
var tagName = $(this).prop('tagName');
cman[tagName] = $(this).text();
});
congressmanArray.push(cman);
});
希望这有帮助
[1]
var congressmanArray = []; // for stored congressman data
$(root).find('congressman').each(function(){
// collected data
var cman = {};
cman.id = $(this).find('id').text();
cman.name = $(this).find('name').text();
// ....
congressmanArray.push(cman);
});
var congressmanArray = []; // for stored congressman data
$(root).find('congressman').each(function(){
// collected data
var cman = {};
$(this).find('>*').each(function(){
var tagName = $(this).prop('tagName');
cman[tagName] = $(this).text();
});
congressmanArray.push(cman);
});