【问题标题】:JavaScript code to create dynamic HREFs & Anchor Text from XML file用于从 XML 文件创建动态 HREF 和锚文本的 JavaScript 代码
【发布时间】:2013-03-08 08:20:34
【问题描述】:

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

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

可以通过单击下面的链接访问 XML 文件的摘录。 从一些研究看来,我将不得不使用 xpath,因为从下面的 XML 中,我想为所有具有以

开头的 absolutePath 属性的文件创建 href 链接

“C:\MyFolder\Clients\Client1 (114)\Planograms\”。

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

非常感谢任何帮助。

Example XML File

【问题讨论】:

  • 听起来您需要聘请前端开发人员。
  • 感谢 Jared,但不幸的是,目前无法选择

标签: javascript html xml-parsing anchor href


【解决方案1】:

您应该在文件中添加一个有效的 XML 标头,例如<?xml version="1.0"?> 您是否使用浏览器运行 Javascript? 在这种情况下,您可能想要使用 jQuery (http://jquery.com)。 您的 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>

【讨论】:

  • 非常感谢乔恩。我的 XML 文件确实有一个有效的标题,它只是我链接到的一个摘录。我会研究 jquery 谢谢。
  • 嗨乔恩,我似乎无法让它工作。请问我在哪里引用我的 xml 文件名,请问您对 AJAX 的引用是什么? "$.ajax({ url: "yourajaxservice", 缓存: false })。"
猜你喜欢
  • 2014-05-27
  • 1970-01-01
  • 2012-12-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-11-29
相关资源
最近更新 更多