0

このように、複数の UL と各 UL の上にリンクを生成する php ページがあります。

<a title="Category one" id="cat-1"> Category one </a>
  <ul id="subcategory-1-ul">
    <li>Subcategory<li/>
    <li>Subcategory</li>
  <ul>

<a title="Category two" id="cat-2"> Category two </a>
  <ul id="subcategory-2-ul">
    <li>Subcategory<li/>
    <li>Subcategory</li>
  <ul>

各メイン カテゴリには多くのサブカテゴリがあるため、UL を非表示にして、アンカーをクリックしたときにのみ表示したいと考えています。

私はこのjqueryを使用しようとしています:

$(document).ready(function() {
         $('#toggle-link').click(function() {
            $('#ul-to-hideshow').toggle('slow');
         });
        })

これは正常に機能しますが、最初の UL と同じ ID を持つアンカーに対してのみです。各 UL またはアンカーの ID を渡し、各 UL のオンとオフを切り替えるには、何らかの方法で変更する必要があります。各アンカーとその UL に固有の ID があります。

スクリプトを変更するにはどうすればよいですか?

4

1 に答える 1

1

.each を使用するか、共通クラスを使用してそれらを非表示にします。

$('.ULCategory').toggle('slow');

したがって、あなたのhtmlは次のようになります。

<a title="Category one" id="cat-1"> Category one </a>
  <ul class="ULCategory" id="subcategory-1-ul">
    <li>Subcategory<li/>
    <li>Subcategory</li>
  <ul>

コメントに基づいて編集

<a title="Category one" id="cat-1"> Category one </a>
  <ul class="cat-1" id="subcategory-1-ul">
    <li>Subcategory<li/>
    <li>Subcategory</li>
  <ul>

$('.cat-1').toggle('slow');
于 2013-09-26T21:51:08.617 に答える