I am designing a website where users can enter "assignments":

  • Company details
  • A project they have worked on with the company
  • Their role within the project


download bmml source – Wireframes created with Balsamiq Mockups

For any given assignment, the Company and/or Project may have already been entered by another user.

I would like to implement a combination "Find" and "Create" control.

I think an autocomplete textbox is probably the best search mechanism, as the list of companies could be quite large. If no existing companies match the text entered, a new company will be created.

I'm not sure how to make it clear to the user that they are

  1. creating a new company, or
  2. selecting an existing company

Any thoughts on ways to do this?

  • Auto-complete text box is fine. If you really want to indicate that what the user entered is going to be added as a company, add an entry to the drop-down list that reads something like "add company: <characters typed so far>". Commented Dec 29, 2013 at 14:20

2 Answers 2


You can implement it like the tags work in stackexchange sites. Start to type in the tags field and do a search on every character. In this example, I typed fin.

enter image description here

I see a list of tags (companies in your case) which I can select. Or i continue to type and create a new tag (company) if there are no matches made.

enter image description here

  • 1
    This is a good model to take as a starting point - may need some tweaking as there will only be one company selected each time. Thanks for the suggestion
    – Alex
    Commented Jan 6, 2014 at 2:45

A dropdown + textbox combo also can be used for this scenario.

The options in the dropdown can be filtered on the user entering text in input field. To make the options more rich, an accordion type grouping can be provided in the dropdown for the user to select.

If the entered text does not match with the options available to select, The user can be prompted to click a '+' icon or similar cue to add the company to the list

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.