0

サーバーからのデータを入力する 2 つのドロップダウンがあります。最初のドロップダウンにはカテゴリが含まれ、2 番目のドロップダウンにはすべてのサブカテゴリが含まれます。そのようです:

<select ng-model="category1">
    <option value="1">Item 1</option>
    <option value="2">Item 2</option>
    <option value="3">Item 3</option>
</select>

<select ng-model="category1">
    <option value="4">Subitem 1</option>
    <option value="5">Subitem 2</option>
</select>

サブカテゴリは、プロパティ「parentID」によってメイン カテゴリにリンクされているため、上記の例では、サブアイテム 1 は parentID = 2 を持つことができます。これは、サブアイテム 1 がアイテム 2 のメイン カテゴリを持つことを意味します。

ユーザーがメイン カテゴリまたはサブカテゴリを選択できるようにしたい。

  • メイン カテゴリを選択すると、2 番目のドロップダウンがフィルタリングされ、そのカテゴリにリンクされたサブカテゴリ (つまり、その親 ID を持つサブカテゴリ) のみが表示されます。

  • サブカテゴリは、メイン カテゴリが選択されている場合にのみ選択できます

私の質問は、角度でこのフィルタリングをどのように達成するのですか? 何らかの方法で ng-options と angulars フィルターを使用する必要があると考えていますが、方法がわかりません。

現在、2 番目のドロップダウンには、最初のドロップダウンで選択された値に関係なく、すべてのサブカテゴリが含まれています。フィルターで親 ID を使用して、表示する必要があるサブカテゴリを特定する必要があることはわかっていますが、どこに配置すればよいでしょうか?

4

1 に答える 1