2013-03-17 79 views
0

我想獲得我正在移動的div的id。 我試過不同的方法,沒有任何工作。 那麼,爲什麼這不工作?可拖動的ID

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

http://jsfiddle.net/pX2T4/

+2

[代碼很好。 **你的可拖動div沒有ID **(http://jsfiddle.net/mattball/JfRPX/)只是一個FYI,'this.id'總是可以用來代替'$(this)。 ATTR( 'ID')'。 http://stackoverflow.com/q/4651923/139010 – 2013-03-17 16:18:05

回答

1

這是因爲$(這)是指的內部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); 
    } 
}); 

輸出 「foo」 的

2

,因爲你沒有發現的$('#content')的ID這是不行的,但孩子的div,這不的不一個id集。因此,給孩子一個ID,它會找到一個。