You can take a look on Simple hierarchical select and Client-side hierarchical select module.
Simple hierarchical select
Simple hierarchical select defines a new form widget for taxonomy
fields to select a term by "browsing" through the vocabularies
hierarchy. The widget is available in node forms and as Views exposed
filter.
This module has been inspired by Hierarchical select but is much
simpler (hence the name ;) ).
Client-side hierarchical select
A simple client-side hierarchical select widget for taxonomy terms.
The widget provides three settings:
Force selection of deepest level (If checked the user will be forced
to select terms from the deepest level.)
Parent (Allows to select a parent term to use only a subtree of a
vocabulary for this field.)
Labels per hierarchy-level