如何在jQuery中更改DIV的ID ?

How should change the ID of DIV in jQuery

本文关键字:DIV ID jQuery      更新时间:2023-09-26

我必须交换div。

交换工作很好(我使用Jquery交换插件)。在交换之后,我也想交换div的ID。

请找到JQuery代码。请帮助我如何交换DIV id。

 $(".arrowIMG").click(function() {
                    var arr = this.id.split("_");
                    if(arr[0] == 'down'){
                        var div1 = $('#'+'div_' +arr[1]);
                        var next = (parseInt(arr[1]) + 1);
                        alert(next)
                        var div2 = 'div_' + next;
                        div1.swap({
                        target: div2, 
                        opacity: "0.5",
                        speed: 1000, 
                        callback: function() { 
                         //Now Here i want to swap the id of div (div1 and dev2)
                        }
                    });
                    }else if(arr[0] == 'up') {
                        alert('up');
                    }
                }); 

请告诉我如何交换DIV id

我不确定你的函数的期望行为是什么-但以下应该工作来改变一个ID:

$(element).attr('id', 'new_id');
callback: function() { 
    var div2selector = $('#'+div2); //making both selectors in same format as div2='div_' + next
    var tempid = div1.attr('id');
    div1.attr('id',div2selector.attr('id'));
    div2selector.attr('id',tempid );
                    }
编辑:

div1和div2格式不同。所以制作了类似的

使用jQuery .attr()获取匹配元素集合中第一个元素的属性值

检查:

<div id="my" > s,dfsd </div>  
<div id="src" class="div1">       
    src
</div>
<div id="dest" class="div2">
    dest
</div>
jQuery代码:

$("#my").attr('id','mynewid');
$("#mynewid").html("this new content");
var temp = $(".div1").attr('id');
$(".div1").attr('id',$(".div2").attr('id'));
$(".div2").attr('id', temp);

检查这个jsFiddle

使用此代码片段调整单击事件行为。在你的function()代码中,你已经访问了这些元素,所以你可以直接访问这些元素的id。

var temp = div1.attr('id');
    div1.attr('id',div2.attr('id'));
    div2.attr('id', temp);