这是我的JSFiddle我只希望从每个组(水果,名人,手机)拖动一个项目到任何一个步骤。我试过不允许使用return false,但返回false似乎没有用。请帮助我不要将每个组中的多个元素拖放到任何规则中。
我可以添加最多只添加3个项目到任何一个组。
这是我编写的示例代码,如果该组已经存在,则不删除该元素。
$("#Rule1List,#Rule2List,#Rule3List").on("drop",function (element,ui) {
$("#Rule1List>li,#Rule2List>li,#Rule3List>li").each(function (index) {
if($(this).eq(index).hasClass($(ui.draggable).attr('class')))
{
console.log($(ui));
return false;
}
});
});
答案 0 :(得分:1)
好的,我不会给你解决这个问题的代码,但建议可能对你有益
在拖动任何组中的任何项目时,只需获取该特定组中项目的大小,即项目的长度。例如,在手机组中,您有4个项目。所以在拖动项目中将此大小存储在变量中。 on drop从项目组中删除该特定项目。并检查项目组的当前长度是否小于先前存储的大小,而不是从该特定项目组中删除可拖动的类和事件