0

我有一个看起来像这样的数组:

var myArray = {
    "ABC.txt": "1",
    "AD.txt": "2",
    "uploads/": "1",
    "uploads/Penguins.jpg": "1",
    "uploads/Tulips.jpg": "2",
    "morefiles.txt": "2"
};

我正在尝试ul li像这样:

<ul>
  <li>
    <a href="ABC.txt" pos="1">ABC.txt</a>
  </li>
  <li>
    <a href="AD.txt" pos="2">AD.txt</a>
  </li>
  <li rel="folder">
    <a href="uploads/" pos="1">uploads</a>
    <ul>
      <li>
        <a href="uploads/Penguins.jpg" pos="1">Penguins.jpg</a>
      </li>
      <li>
        <a href="uploads/Tulips.jpg" pos="2">Tulips.jpg</a>
      </li>
    </ul>
  </li>
  <li>
    <a href="morefiles.txt" pos="2">morefiles.txt</a>
  </li>
</ul>

我正在尝试UL LI使用 jQuery,但实际上我什么都没有,只是一些代码片段,甚至没有任何值得放在这里的东西。

请一点帮助。

4

2 回答 2

1

看起来你需要的是某种模板引擎。查看ICanHaz,您可以在其中获得以下内容:

<script id="user" type="text/html">
  <li>
    <p class="name">Hello I'm {{ name }}</p>
    <p><a href="http://twitter.com/{{ twitter }}">@{{ twitter }}</a></p>
  </li>
</script>

初始化脚本很简单:

var user = ich.user(user_data_object)

此外,本文客户端模板将为您解释以下内容:

<h1>{{title}}</h1>
<ul>
    {{#names}}
        <li>{{name}}</li>
    {{/names}}
</ul>

除此之外:

var data = {
    "title": "Story",
    "names": [
        {"name": "Tarzan"},
        {"name": "Jane"}
    ]
}

要转换为:

<h1>Story</h1>
<ul>
    <li>Tarzan</li>
    <li>Jane</ul>
</ul>
于 2013-03-10T17:27:33.910 回答
0

首先变量 myArray 不是一个数组,一个数组是在 [ ] 中定义的,所以它应该看起来像这样

var myArray = [{"ABC.txt" : "1"}, {"AD.txt" : "2"}, {"uploads/" : "1"}, {"uploads/Penguins.jpg" : "1"}, {"uploads/Tulips.jpg" : "2"},{"morefiles.txt" : "2"}];

但是要在您的问题中生成 html,您可能最好使用以下结构:

var myArray = [
    {
        "href":"ABC.txt",
        "pos" : "1"
    },{
        "href":"AD.txt",
        "pos":"2"
    },
    ...etc
];

然后使用另一个内部数组生成嵌套

然后,您可以使用 for 循环遍历数组并随时将元素附加到

于 2013-03-10T17:37:23.193 回答