Dojo拖放“列表中的列表”(嵌套列表)

时间:2012-01-20 12:45:21

标签: javascript html css dojo drag-and-drop

我有以下HTML,我使用dojo拖放来排序属性和 把它们放到另一个部分。但我怎样才能对各个部分进行排序?它对我不起作用,我创造了什么:

<ul accept="section" data-dojo-type="dojo.dnd.Source" class="container dojoDndSource">

  <li id="section1" class="dojoDndItem" dndtype="section">
     <ul accept="attribut" data-dojo-type="dojo.dnd.Source" class="container dojoDndSource">
       <li dndtype="attribut" id="attribut1"></li>
       <li dndtype="attribut" id="attribut2"></li>
       <li dndtype="attribut" id="attribut3"></li>
     </ul>
  </li>

  <li id="section2" class="dojoDndItem" dndtype="section">
     <ul accept="attribut" data-dojo-type="dojo.dnd.Source" class="container dojoDndSource">
       <li dndtype="attribut" id="attribut1"></li>
       <li dndtype="attribut" id="attribut2"></li>
       <li dndtype="attribut" id="attribut3"></li>
     </ul>
  </li>

</ul>

1 个答案:

答案 0 :(得分:0)

这就是你想要做的事情:在同一个列表中以及从列表到列表中移动内部列表项。您还想移动两个外部列表。如果是这样,试试这个:

<style>
.container {
  width: 50%;
}
</style>

<ul accept="section" data-dojo-type="dojo.dnd.Source" class="container dojoDndSource">
  <li id="section1" class="dojoDndItem" dndtype="section">
     <ul accept="attribut" data-dojo-type="dojo.dnd.Source" class="container dojoDndSource">
       <li class="dojoDndItem" dndtype="attribut" id="attribut1">one</li>
       <li class="dojoDndItem" dndtype="attribut" id="attribut2">two</li>
       <li class="dojoDndItem" dndtype="attribut" id="attribut3">three</li>
     </ul>
  </li>

  <li id="section2" class="dojoDndItem" dndtype="section">
     <ul accept="attribut" data-dojo-type="dojo.dnd.Source" class="container dojoDndSource">
       <li class="dojoDndItem" dndtype="attribut" id="attribut4">four</li>
       <li class="dojoDndItem" dndtype="attribut" id="attribut5">five</li>
       <li class="dojoDndItem" dndtype="attribut" id="attribut6">six</li>
     </ul>
  </li>
</ul>

我所做的改变是:

  • 修复了第二个列表中的重复ID。
  • 将'container'类的宽度设置为小于100%。这会给你一个地方 抓住整个列表。清单项目
  • 通过添加“dojoDndItem”类来使您的内部列表项可拖动。