0

好的,用一个标题来解释有点困难,但基本上我有一个动态类添加到一个基于父元素的动态类的子元素中。添加了这样的:

$('ul').each(function(key){
    if ($(this).hasClass('sortable')){
        $(this).addClass('parent' + key);
        $(this).children().addClass('parent' + key);
    };
});

之后的结构非常简单:

<ul class="parent0">
    <li class="parent0">
        <ul class="parent1">
            <li class="parent1"></li>
        </ul>
    </li>
</ul>

现在 UI 让用户将这些 li 移到父级之外并放置在其他位置。稍后,我想检查元素,然后将其与相应的(原始)父元素匹配。它不能是 $(this) 父级,因为它将被移出父级,但类仍然存在。

所以检查正在寻找 .parent(n) ,然后用 .parent(n) 找到 ul 最终这段代码将存在于里面:

$('sortable li').appendTo($('THIS-IS-THE-DYNAMIC-CLASS'));

所以我假设 find 会在此之前,但我不知道如何写。

4

1 回答 1

1

我会使用除类之外的其他属性,因此它可以是完全唯一的。使用$(this).data$(this).attr。而且我建议将 ID 分配给可以完全唯一的父级(或不同的属性)。在我看来,这会让事情变得更干净。

例如...

假设:

$(this).attr('parentClass', '.parent' + key);

然后

$('.sortable li').each(function() { $(this).appendTo($(this).attr('parentClass')); });
于 2012-12-05T19:36:26.313 回答