【发布时间】:2013-03-21 03:25:21
【问题描述】:
我有基于 xml 的递归目录列表。例如,我想从特定目录获取文件列表。通过 XML,我应该只获取 img2.gif 和 img3.gif 和 img6.gif。但是脚本还返回实际上在子目录中的 img4 和 img5,我不想处理子目录. 目标是从请求的目录中获取文件并忽略嵌套的子目录。 一种方法是将 xml 结构从嵌套更改为正常,但我不想要那样。 XML
<directory name=".">
<file name="img1.gif" />
<directory name="images">
<file name="images/img2.gif" />
<file name="images/img3.gif" />
<directory name="images/delta">
<file name="images/delta/img4.gif" />
<file name="images/delta/img5.gif" />
</directory>
<file name="images/img6.gif" />
</directory>
</directory>
JAVASCRIPT
function parse_files(path) {
$.ajax({
type: "GET",
url: "list.xml",
dataType: "xml",
success: function(xml) {
$(xml).find('directory').each(function(){
if($(this).attr('name')==path) {
$(this).find('file').each(function(){
var list = $(this).attr('name');
alert(list);
});
}
});
}
});
}
parse_files("images");
// returns img2,img3,img4,img5,img6
// should return img2,img3,img6
【问题讨论】:
标签: jquery xml parsing recursion nested