如何使用jquery从列表html获取第一级li listitem

时间:2017-01-20 05:09:46

标签: jquery jquery-ui-sortable jquery-ui-draggable

如何使用jquery从list html中获取第一级li listitem ...例如我正在使用draggable和sortable。我想让每个listitem可以拖动,包括--- Sally和Bike ....问题是当我选择sally时,它的孩子也被拖了。

<div id="content2">
    <div>
        <div>
            <p>Some Text</p>
            <p>Some More Text</p>
            <div>Random Div</div>
            <ul>
                <li>Bob</li>
                <li>Sally
                    <ul>
                        <li>Car</li>
                        <li>Boat</li>
                        <li>Bike
                            <ul>
                                <li>Red</li>
                                <li>Green</li>
                                <li>Blue</li>
                            </ul>
                        </li>
                    </ul>
                </li>
                <li>Larry</li>
                <li>Mo</li>
            </ul>
        </div>
    </div>
</div>

1 个答案:

答案 0 :(得分:-1)

你没有展示你的jQuery(你真的应该这样做),但我觉得你正在做$( "#content2 li" ).draggable();之类的事情,它正在将可拖动功能应用到li所有 s并且您希望它仅适用于最顶层的li

要做到这一点,我会给ul一个类target-ul,然后选择li的直接子项ul,如$( ".target-ul > li" ).draggable();

&#13;
&#13;
 $( function() {
    $( ".target-ul > li" ).draggable();
  } );
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://code.jquery.com/ui/1.12.1/jquery-ui.min.js"></script> 
<div id="content2">
    <div>
        <div>
            <p>Some Text</p>
            <p>Some More Text</p>
            <div>Random Div</div>
            <ul class="target-ul">
                <li>Bob</li>
                <li>Sally
                    <ul>
                        <li>Car</li>
                        <li>Boat</li>
                        <li>Bike
                            <ul>
                                <li>Red</li>
                                <li>Green</li>
                                <li>Blue</li>
                            </ul>
                        </li>
                    </ul>
                </li>
                <li>Larry</li>
                <li>Mo</li>
            </ul>
        </div>
    </div>
</div>
&#13;
&#13;
&#13;