2

Liを多く含むULタグを持っていますが、 Liと非表示にする Li が 必要です。classnames
showclassname are same

JSFiddle DEMOはこちら

たとえば、ここでclass1をクリックすると、「John、Michle、Alex」が表示され、残りはすべて非表示にする必要があります

EDITED: リストを非表示にしながらLiも並べ替えます

答え:

私の空白スペースの問題$(this).show(); を 解決するように変更 することで:)$(this).parent('Li').show();

4

2 に答える 2

1
  1. 使用しないでください.live()、非推奨です
  2. 使用しないでください.each()、それは不要です
$("ul.tagingUL li").on("click", function () {
    var className = $(this).attr('class');
    $('#emplistName ul li span.'+className).show();
    $('#emplistName ul li span:not(.'+className+')').hide();
});

JSFIDDLE

于 2013-03-02T12:06:57.683 に答える
1

jsfiddle で単純なエラーが発生しました。これが修正です。

私は行を変更しました:

if ($('#emplistName Ul Li Span').hasClass(className) === true) {

に:

if ($(this).hasClass(className) === true) {
于 2013-03-02T12:06:29.833 に答える