Javascript jqueryui:如何更新drop事件的id
我做简单的拖放只是为了我的练习。我将元素拖放到拖放区,有两个div drag me和duplicate me,它们都在工作,但在duplicate function中,我正在增加id,即test-clone-1,工作正常。我只是想知道如何在删除时增加id,因为在删除时,默认id是test-clone-1,因为它在复制时会增加,如test-clone-2、test-clone-3。我希望,如果I drag n drop元素的默认id是test-clone-1,现在我再次拖动n drop时,id应该是test-clone-2,但是drag n drop和duplicate id增量应该相互关联Javascript jqueryui:如何更新drop事件的id,javascript,jquery,jquery-ui,drag-and-drop,Javascript,Jquery,Jquery Ui,Drag And Drop,我做简单的拖放只是为了我的练习。我将元素拖放到拖放区,有两个div drag me和duplicate me,它们都在工作,但在duplicate function中,我正在增加id,即test-clone-1,工作正常。我只是想知道如何在删除时增加id,因为在删除时,默认id是test-clone-1,因为它在复制时会增加,如test-clone-2、test-clone-3。我希望,如果I drag n drop元素的默认id是test-clone-1,现在我再次拖动n drop时,id应该
$( "#editorDesignView" ).droppable({
accept: '.textTemplate',
drop: function( event, ui ) {
var html = '<div id="test-clone-1" class="test" style="background: #eee; width: 80%; margin: 10px auto; padding: 10px;"><p contenteditable="true" style="padding: 5px;">Add your text here.</p><div style="padding:10px; width:50%;" class="draggable-area">drag me</div><div style="padding:10px;width:50%;" class="js-duplicate">duplicate me</div></div>';
$(html).appendTo(this).hide().slideDown();
}
});
$('#editorDesignView').sortable({
handle: '.draggable-area'
});
你是说像这样的?当你拖放c时,c会增加,而当复制c时,c会保持不变
var c = 1;
$(".textTemplate").draggable({
helper: "clone",
zIndex: 2500,
});
$( "#editorDesignView" ).droppable({
accept: '.textTemplate',
drop: function( event, ui ) {
var html = '<div id="test-clone-'+c+'" class="test" style="background: #eee; width: 80%; margin: 10px auto; padding: 10px;"><p contenteditable="true" style="padding: 5px;">Add your text here. ' + c + '</p><div style="padding:10px; width:50%;" class="draggable-area">drag me</div><div style="padding:10px;width:50%;" class="js-duplicate">duplicate me</div></div>';
$(html).appendTo(this).hide().slideDown();
c++;
}
});
$('#editorDesignView').sortable({
handle: '.draggable-area'
});
真正的方法是在editorDesignView中统计id以test clone开头的div元素 cloneCount现在保留要提供给被删除元素的数字 这与拖动克隆的重新排序相同。 这将确保正确的数字 实际上,如果您对克隆进行了重新排序,最后一个元素就是引用,并且可能没有最高数量
这就是你的。有一件事我想知道,如果我想要id,比如test-clone-45f63随机数-1,你可以使用^=运算符作为begin with,使用*=运算符作为contains。现在,若你们使用随机数,你们将不再确保唯一的id,因为随机数可能会重复。。。而random-1可能已经存在。如果你想随机化一部分,它不应该是一个使id唯一。。。如果你想用id来计数元素,那么必须有一个固定的部分。你可以用一门课,我觉得没用。。。因为增量部分是强制性的;但是如果目标是伪装身份,这样控制台嗅探器就会抓伤他们的头。。。你可以做一些类似于[随机5个数字][从01到99递增2位数][随机第3部分数字]的事情。而且很难注意到这种增加。id将是唯一的,因为位置6和7处的数字。。。哈哈;并使用一个类来计算元素。
var cloneCount = $("#editorDesignView").find("div[id^='test-clone-']").length+1;