0

だから、この木があります。PHP を使用して MySQL データベースからコンパイルされます。問題は、内部に UL を持たないすべての LI と、さらに多くの LI を見つけたいということです....

例: http://i.stack.imgur.com/Pet8Z.jpg

この例では、jquery で選択する必要がある LI にマークを付けました。なぜなら、LI には子がなく、それが私が望んでいることだからです。

基本的にはカテゴリから作成された単なるツリーですが、最も深いカテゴリに子がない場合はアイテムと見なす必要があり、jquery に子を持たないアイテムを見つけてもらいたいです。

これはツリー全体です: http://jsfiddle.net/trueskillz/qnRpj/1/

私はこのようなことをして(下のコード)、子があるかどうかを確認してから、背景を赤にすることができます(たとえば)。これにより、「カテゴリ」ではなく「アイテム」を見つけることができますが、これよりも簡単な方法....

    $("#parttree ul").each(function(){
      $(this).find("li").each(function(){
          $(this).find("ul").each(function(){
              $(this).find("ul").each(function(){
                 $(this).css("background-color","red");
              });
          });
      });
    });

これは、このリスト内のアイテムを見つける方法ではありません...だから、もっと簡単な方法があることを願っています...

4

2 に答える 2

3

いくつかのオプション:

var $leaves = $('#parttree li').filter(function() {
    return !$(this).has('ul');
});

var $leaves = $('#parttree li:not(:has(ul))');

var $leaves = $('#parttree li').filter(":not(:has(ul))");

var $leaves = $('#parttree li').not(":has(ul)");
于 2013-08-07T17:34:19.547 に答える