将li从一个ul拖到另一个ul

时间:2016-05-05 18:05:43

标签: javascript jquery jquery-ui jquery-ui-draggable jquery-ui-droppable

我正在尝试使用jquery-ui draggable和droppable将<li>从一个<ul>移动到另一个<ul>

目前我有

HTML

<div>
  <h4><span>basket</span></h4>
  <ul id="basket" class="basket">
    <!-- items -->
    <li id="test1">test1</li>
    <li id="test2">test2</li>
  </ul>
</div>

<div>
  <h4><span>courses</span></h4>
  <ul id="courses" class="courses">
    <!-- items -->
  </ul>
</div>

JS

$("#test1").draggable({
  revert: "invalid",
  containment: "document",
  cursor: "move"
});

$("#test2").draggable({
  revert: "invalid",
  containment: "document",
  cursor: "move"
});

$("#basket").droppable({
  accept: "li",
  activeClass: "ui-state-highlight",
  drop: function(event, ui) {
    basketCourse(ui.draggable);
  }
});

$("#courses").droppable({
  accept: "li",
  activeClass: "ui-state-highlight",
  drop: function(event, ui) {
    courseCourse(ui.draggable);
  }
});

function basketCourse(item){
  console.log("added course to basket");
}

function courseCourse(item){
  console.log("added course to courses");
}

如何将test1和test2从篮子中移到课程中?

现在我可以将#test1#test2拖到篮子里面,它会运行basketCourse(),但它似乎永远不能允许我将其中任何一个放入课程。

我正在使用bootstrap,jquery和jquery-ui ..

1 个答案:

答案 0 :(得分:1)

您的列表没有足够的高度来放置项目,只需设置function goTo(tab){ $('.listgroup a.active').removeClass("active"); $(tab).addClass("active"); } //tab should be the selector, you can use ids 或任何您想要的内容,您就可以将项目放在那里 - https://jsfiddle.net/825pqyz8/