2010-11-28 37 views
0

我有一些麻烦找出这个问题的正确的选择器语法,并希望得到一些帮助。表格中的单元格的jQuery droppable选择器

所以,我有一个表,有五列。在每一行中,在每个单元格中,我都有一个名为MyClass的DIV元素。我将MyClass的对象设置为可拖动的,现在我需要设置合适的放置目标。我希望行中的任何单元格包含MyClass的元素(第一列除外),但只存在于元素存在的行中(它不应该被丢弃在上面或下面的行的列中)。

我希望这是有道理的。任何人有任何想法什么是正确的语法?以下是我目前正在工作的内容,但不完全正确,因为它允许在上面或下面的行中删除。

$(".MyClass").closest("tr").children(":not('.column-1')").droppable({ ... }); 

回答

2

可以传递函数到accept option.droppable()所以它仅接受相同的行中的那些<div>元件,这样:

$(".MyClass").closest("tr").children(":not('.column-1')").droppable({ 
    accept: function(draggable) { 
     return $.contains(this.parentNode, draggable[0]); 
    } 
}); 

在功能draggable是jQuery的对象,它是可拖动,我们只是使用$.contains()来查看.parentNode<tr>)是否包含该可拖动...意味着您要删除的<div>来自此行。

You can test it out here

+0

这很好。正是我需要的。非常感谢。 – 2010-11-28 14:18:13

相关问题