我有一些代码,可以使我拖放元素。问题在于,我不知道如何在元素删除时更改ID。它需要保留一个具有正确数字的列表。
<div class="container">
<div class="block">
<div id="draggables">
<div id="dragbox1" class="stepbox">
<label>Step 1</label>
<input type='text' placeholder="Omschrijving" name="textbox1">
</div>
<div id="dragbox2" class="stepbox">
<label>Step 2</label>
<input type='text' placeholder="Omschrijving" name="textbox2">
</div>
<div id="dragbox3" class="stepbox">
<label>Step 3</label>
<input type='text' placeholder="Omschrijving" name="textbox3">
</div>
</div>
</div>
</div>
当我拖动DIV时(例如,带有ID dragbox1的Div Div下向Div带有ID Dragbox3的DIV),我希望JQuery重命名Div ID,以便它以相同的顺序从1,2,3而不是2,3,1。
我认为它应该像循环一样有些:
var divClass = /*div class name*/;
var divId = /*static div id name*/;
var checkDivOrder = function(){
if(/*check for divs with the name of the divClass*/) {
if (divId === /*static div id name*/) {
divId = /*divIdName*/ + 1;
} else {
divId = /*divIdName*/ + /*previous div id number*/ + 1;
}
}
};
//recall function
if(/*div being dropped*/){
checkDivOrder(/*prev div number + 1*/);
}
有人可以帮助我这样做,因为我的jQuery和JavaScript技能不太好。
根据我的理解,您希望您以dragbox1,dragbox2,dragbox3的序列为单位。
您可以这样做。
$('.stepbox').each(function(ind,obj){
$(this).prop('id','dragbox'+(ind+1));
});