0

我想得到我正在移动的 div 的 id。我尝试了不同的方法,没有任何效果。那么为什么这不起作用呢?

$('#content').children().draggable({
drag: function (event, ui) {
    var id = $(this).attr("id");
    $('#textarea').val(id);
}

http://jsfiddle.net/pX2T4/

4

3 回答 3

2

这不起作用,因为您没有找到 的 id $('#content')而是没有设置 id 的子 div的 id。因此,给孩子一个 ID,它会找到那个。

于 2013-03-17T16:18:14.100 回答
1

这是因为 $(this) 指的是标有类的内部 div

http://jsfiddle.net/pX2T4/

<div id="content">
    <div class="content" id="foo">
        <textarea name="" id="textarea" cols="30" rows="10"></textarea>
    </div>
</div>

$('#content').children().draggable({
    drag: function (event, ui) {
        var id = $(this).attr("id");
        console.log(id);
        console.log($(this));
        $('#textarea').val(id);
    }
});

输出“富”

于 2013-03-17T16:18:30.327 回答
0

而是$(this)使用$("#content") 试试这个:

http://jsfiddle.net/pX2T4/4/

于 2013-03-17T16:22:11.730 回答