0

JavaScript を使用して、複数の LI を 2 つの UL に分割する必要があります。

私が編集できる唯一のコードはテンプレートファイルです:

[foreach array="nodes" as="node"]
  <li>
   <a href="%prefix%view/%node.id%" [if expr="%node.id%==%id% || %node.id%==%parent_id%"]  class="hoofdmenuactief"[/if]>%node.title%</a>
            %node.subnodes_html%
  </li>
[/foreach] 

このファイルに PHP を追加することはできないため、JavaScript で解決したいと考えています。

<ul>
  <li><a href="#">Item 1</a></li>
  <li><a href="#">Item 2</a></li>
  <li><a href="#">Item 3</a></li>
  <li><a href="#">Item 4</a></li>
  <li><a href="#">Item 5</a></li>
  <li><a href="#">Item 6</a></li>
</ul>

Javascript で UL 内の LI をカウントし、LI で 2 つの UL を作成するようにしたい

結果は次のようになります。

<ul>
 <li><a href="#">Item 1</a></li>
  <li><a href="#">Item 2</a></li>
  <li><a href="#">Item 3</a></li>
</ul>
<ul>
  <li><a href="#">Item 4</a></li>
  <li><a href="#">Item 5</a></li>
  <li><a href="#">Item 6</a></li>
</ul>

サイトはプロトタイプを使用しています。誰かがこれの例を知っていますか、またはどのように始めるべきですか? 前もって感謝します!!

4

1 に答える 1

1

テンプレートでできると思います。私は Smarty しか使ったことがないので、構文上のドットを接続する必要があります。

[LET nodesLen = nodes.length]
[LET countSoFar = 0]
[foreach array="nodes" as="node"]     --attributes for key? name? could be helpful
  <li>
    <a href="%prefix%view/%node.id%"]>%node.title%</a>
  </li>
[countSoFar++]
 [if countSoFar >= nodesLen / 2]
  <ul>
  </ul>
 [/if]
[/foreach] 

smarty には、countSoFar で示したことを自動的に実行する smarty..iteration があります。テンプレート エンジンの機能と、上でスケッチしたものをどのように実装できるかを確認してください。

これを行うためにプロトタイプやJavaScriptは必要ないと思います.tplで簡単に処理できる問題のようです

于 2010-11-20T12:57:48.833 に答える