创建动态HREF的JavaScript代码&;从XML文件锚定文本

创建动态HREF的JavaScript代码&;从XML文件锚定文本,javascript,html,xml-parsing,anchor,href,Javascript,Html,Xml Parsing,Anchor,Href,我希望能够通过使用JavaScript访问包含目录结构的XML文件,在div中创建href链接。我还想将文件名显示为每个链接的锚文本。链接将引用的html(带内联JavaScript)、xml文件和内容文件将自动从Windows服务器同步到Android平板电脑,因此无法使用服务器端代码 我已经设法在服务器上设置了一个自动任务,该任务运行一些Java代码来创建XML文件/Windows目录结构。然后与内容和html文件一起同步到Android设备。 div中显示的链接数量将随着新文件添加到文件夹

我希望能够通过使用
JavaScript
访问包含目录结构的
XML
文件,在div中创建
href
链接。我还想将文件名显示为每个链接的锚文本。链接将引用的
html
(带内联JavaScript)、xml文件和内容文件将自动从Windows服务器同步到
Android
平板电脑,因此无法使用服务器端代码

我已经设法在服务器上设置了一个自动任务,该任务运行一些Java代码来创建XML文件/Windows目录结构。然后与内容和html文件一起同步到Android设备。
div中显示的链接数量将随着新文件添加到文件夹和旧文件的删除而改变

单击下面的链接可以访问XML文件的摘录。 通过一点研究,我似乎必须使用xpath,因为从下面的XML中,我想为所有具有以开头的absolutePath属性的文件创建href链接

“C:\MyFolder\Clients\Client1(114)\plangrams\”

然后,我希望链接的锚文本显示每个文档的文件名,以便用户知道哪个是哪个

非常感谢您的帮助


您应该向文件中添加有效的XML头,例如
您是否使用浏览器来运行Javascript? 在这种情况下,您可能需要使用jQuery()。 您的HTML和Javascript文件可能如下所示:

    <!DOCTYPE html>
    <html>
    <head>
    <script src="http://code.jquery.com/jquery-latest.js"></script>
    </head>
    <body>
<ul id="filelist">
</ul>
    <script>
$.ajax({
url: "http://yourajaxservice",
cache: false
}).done(function( xml ) {
    xmlDoc = $.parseXML( xml );
    $xml = $( xmlDoc );
    $xml.find( "directory" ).each(function() {
            $(this).find("file").each(function() {
                    var currentFileName=$(this).attr("name");
                    var currentPath=$(this).attr("absolutePath");
                    if (currentPath.startsWith("C:\MyFolder\Clients\Client1 (114)\Planograms\")) {
                        $("#filelist").append("<li><a href='"+currentPath+"'>"+currentFileName+"</a></li>");
                   }
           });
   });

});

    </script>
    </body>
</html>

$.ajax({ url:“http://yourajaxservice", 缓存:false }).done(函数(xml){ xmlDoc=$.parseXML(xml); $xml=$(xmlDoc); $xml.find(“目录”).each(函数(){ $(this.find(“file”).each(function(){ var currentFileName=$(this.attr(“name”); var currentPath=$(this.attr(“绝对路径”); if(currentPath.startsWith(“C:\MyFolder\Clients\Client1(114)\plangrams\”){ $(“#文件列表”)。追加(“
  • ”); } }); }); });
    听起来你需要雇佣一名前端开发人员。谢谢Jared,但不幸的是,目前还不能选择。非常感谢Jorn。我的XML文件确实有一个有效的头,它只是我链接到的一个摘录。我会调查jquery的谢谢。嗨,Jorn,我似乎无法让这个工作。请问我在哪里引用我的xml文件名?请问您对AJAX的引用是什么?$.ajax({url:,缓存:false})