0

你们中的任何人都可以帮我修改我的代码以限制可放置列表中的元素数量以仅接受一个项目,并在用户尝试放置多个项目时显示一条消息?

这是我的代码

$("#droppable_widget,#draggable_widgets").sortable({
            connectWith: "#droppable_widget,#draggable_widgets",
            start: function (event, ui) {
                    ui.item.toggleClass("highlight");
            },
            stop: function (event, ui) {
                    ui.item.toggleClass("highlight");
            }
});
4

2 回答 2

2

只要出现要中止事件的条件,只需返回 false 即可。像这样的东西似乎符合要求,这就是你想要的吗? http://jsfiddle.net/tBaHd/1/

$("#droppable_widget,#draggable_widget").sortable({
  connectWith: "#droppable_widget,#draggable_widget",
  start: function (event, ui) {
  },
  stop: function (event, ui) {
    var item = $(ui.item);
    var to = item.parent().is("#droppable_widget");
    var siblingsCount = item.siblings().size();
    if (to && siblingsCount > 0) {
      alert("only one item allowed here");
      return false;
    }
  }
});
于 2013-07-06T02:55:28.917 回答
0
$("#droppable_widget,#draggable_widgets").sortable({
            connectWith: "#droppable_widget,#draggable_widgets",
            start: function (event, ui) {
                    ui.item.toggleClass("highlight");
            },
            stop: function (event, ui) {
                    ui.item.toggleClass("highlight");
                    $('#droppable_widget').droppable('disable');
            }
});
于 2013-07-06T02:54:04.940 回答