0

このフォーラムで作業している皆さん、カテゴリリストを非表示にします。クリックすると、trファイルが表示されます。これは、より多くのトピックの議論になります。

jQuery-

<script type="text/javascript"> 
$(document).ready(function() { 
$(".slidingDiv").hide(); 
$('.show_hide').click(function() { 
    $('.slidingDiv').slideToggle();
}); 
});

</script>

次に、私が使用しているhtmlを示します。

<table rules="groups" class="highlight" width="100%" border="0" cellspacing="1" cellpadding="0">
<tr>
  <left>    <th colspan="{catrow.tablehead.INC_SPAN}" nowrap="nowrap" width="100%" style="cursor:pointer;" class="secondarytitle show_hide">&nbsp;{catrow.tablehead.L_FORUM}&nbsp;</th></left>
</tr>
<!-- END tablehead -->
<!-- BEGIN cathead -->
<tr class="highlight">
    <!-- BEGIN inc -->
    <td class="{catrow.cathead.inc.INC_CLASS}" width="46"><img src="{SPACER}" height="0" width="46" /></td>
    <!-- END inc -->
    <td class="{catrow.cathead.CLASS_CAT}" colspan="{catrow.cathead.INC_SPAN}" width="100%">
        <h{catrow.cathead.LEVEL} class="hierarchy">
            <span class="cattitle">
                <a class="cattitle" title="{catrow.cathead.CAT_DESC}" href="{catrow.cathead.U_VIEWCAT}">{catrow.cathead.CAT_TITLE}</a>
            </span>
        </h{catrow.cathead.LEVEL}>
    </td>
    <td class="{catrow.cathead.CLASS_ROWPIC}" colspan="3" align="right">&nbsp;</td>
</tr>
<!-- END cathead -->
<!-- BEGIN forumrow -->
<tr class="slidingDiv">
    <!-- BEGIN inc -->
    <td class="{catrow.forumrow.inc.INC_CLASS}" width="46"><img src="{SPACER}" height="0" width="46" alt="." /></td>
    <!-- END inc -->
    <td class="{catrow.forumrow.INC_CLASS}" align="center" valign="middle">
        <img title="{catrow.forumrow.L_FORUM_FOLDER_ALT}" src="{catrow.forumrow.FORUM_FOLDER_IMG}" alt="{catrow.forumrow.L_FORUM_FOLDER_ALT}" />
    </td>
    <td class="row1 over" colspan="{catrow.forumrow.INC_SPAN}" valign="top" width="100%" height="50">
        <table width="100%"><tbody><tr><td><h{catrow.forumrow.LEVEL} class="hierarchy">
        <span class="forumlink">

クリックするとすべてのtrファイルが表示される以外は機能します。それがクリックされたときに表示したい。今、私はそれらにラベルを付けることができました

$('#category tr').click(function(){ 

ただし、phpファイルなどを使用し、誰かが新しいカテゴリを作成すると自動生成されるため、これは不可能です。私はフォーラムを作成するためにウェブサイトと協力しています。だから私はjQueryを使用できることを知っていますphpファイルにアクセスできません。誰かがjQueryを手伝ってくれますか

4

2 に答える 2

1

このようなことをする必要があります:

$(".slidingDiv").hide(); 

$('.show_hide').click(function() { 
    $(this).closest('tr').siblings('.slidingDiv').slideToggle();
}); 

を使用すると、クリックされた に関連してthis適切な を見つけることができます。.slideingDiv.show_hide

于 2012-09-17T21:17:22.227 に答える
0

「filter()」メソッドを使用して、複雑なテストのすべての tr に対して適用することもできます

フィルター関数を引数として渡すことができます...

この関数は、現在のノードをフィルタリングする必要があるかどうかを決定するブール値を返す必要があります

$('.show_hide').click(function() { 
    $('.slidingDiv').filter(function(i,e){
        // Ex: return whether the current tr has a particular descendant 
        return (!!$(this).find('span.foo').length);
    }).slideToggle();
});
于 2012-09-17T21:38:19.400 に答える