By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
462,976 Members | 627 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 462,976 IT Pros & Developers. It's quick & easy.

Unlimited DropDown menus

P: 3

I have searched the forum for a similar problem but have been unable to find anything.

What i am trying to achieve is a dropdown menu which behaves in the following way:

1, Someone selects an category from the first dropdown menu
2, if the category has subcategories then dynamically create a new dropdown underneath and in the process fill it with the subcategories from the chosen option in the first menu.
3, keep doing the above until there are no more subcategories for the chosen option.

I have a demo setup at

There is a small bug in the code which does not completely clear all submenus from the page when you go up the chain and select an option from the first menu... follow the below steps to see what i mean:

1, select "UK Local" from the first dropdown
2, select "Accountants" from the dynamically created dropdown, a dropdown containing "England, Scotland, Wales, N.Ireland" will appear dynamically
3, select "UK Online" from the first dropdown

Now after step 3 you will notice that the dynamically created downdown containing "England, Scotland, Wales, N.Ireland" is still present when it should ideally disappear from the page (it was generated by clicking "UK Local" and is not a sub category list of "UK Online")

Hopefully someone can understand the above, if i didnt make something entirely clear please ask questions and i will try to explain further.

will appreciate any replies.

Feb 1 '08 #1
Share this Question
Share on Google+
1 Reply

Expert 100+
P: 1,208
you need a recursive loop I think?

loop through all div ids
- then a sub loops to remove each of that div's child elements
- then remove the div.
Feb 1 '08 #2

Post your reply

Sign in to post your reply or Sign up for a free account.