A user needs the ability to find data, files or other content in an application.
Provide users with an easy to use search mechanism that offers advanced functionality and filtering capabilities as options.
In addition to the main navigation scheme, the application has secondary functionality to search for information. There may be several types of search-related functionality within the application. The search functionality is not the primary means to access the information, it has a secondary role.
In many cases users have a sense of what they are looking for, or at least a sense of what to ask for. Users also in many cases are thinking of what they are looking for in ways that do not match with the way you have organized your content. Therefore, rather than forcing users to get to know your navigational categorizations, just let them search based on what they are able to articulate, in their own terms.
code here
Place a search box in a consistent position near the top of the view. In most cases you will want to simply use a text field for users to enter a search phrase and a single button labeled "Search" or "Go."
The default search mechanism should just be a simple free form text box that allows users to enter text describing what they are looking for. Do not require users to make any other choices for this simple default search. You can of course offer more advanced search features, but because many people do not like this, do not force them to use it.
Here are some specific elements for search functionality to consider:
Some more specific elements for implementing advanced search to consider: