I've looked at a few of the other similar questions, but I don't think they are the same kind of problem.

I am trying to design to link a person to an item. The page supports free text entry for the common person fields (name, phone, etc.). However, the user may want to link an existing person, so I provided a simply search tool. Once the user has identified the existing person, the person info fills out in the fields.

Now if the user realizes they want a different person and begins editing the fields, it would effectively create an edit against the existing person. How can I provide the user with a better experience?

I've thought about disabling the inputs on an existing record and requiring the user to clear the existing record or take explicit action to edit the record. ie. providing a button to clear the current person or edit the current person. Clearing would re-enable the inputs. Editing might take the user to another page. I feel like taking the user to another page or adding a modal for this is more confusing than anything. Is that my best option?

I've added pictures to explain my approach. The update/cancel buttons are only present when editing an existing customer. They are in addition to the form submit button at the bottom of the page. Validation will prevent a submit while edits are still open.

Adding a new customer

Editing an existing customer

  • Could you provide some of the ideas you've tried out? – Mayo Sep 3 '15 at 16:53
  • @Mayo sure. i updated my post. I'll try to explain the best I can. – Josh C. Sep 3 '15 at 16:57
  • @mayo i've also added a screenshot – Josh C. Sep 3 '15 at 18:10
  • Please provide more detailed information: you have a Item page, and inside that page you have a section where you can select a Customer? whats the context? – Alejandro Veltri Sep 4 '15 at 14:29
  • 1
    @rewobs I've updated my post with more mockups and an explanation. – Josh C. Sep 4 '15 at 14:55

You might want to look at how Google's Material design solves this with its concept of chips.

So in your case once the user links to a person, it is displayed on the screen as a chip. The user can could then remove the chip (unlink) or add a new chip (link a different person).

Here's a link to the design guide on chips: Google Material Design Chip Component

I think that may be a better way to approach the problem. From the examples in the design guide you could think of embedding your form instead of just a simple search to find a person.

  • I probably should have given more info. The majority use case is a new customer calling in and the user needs to link this new customer (or possibly an existing one) to a ticket. – Josh C. Sep 3 '15 at 18:35
  • Yeah I would recommend the chip design idea then. Seems like a good match. – Adam Sep 3 '15 at 18:55
  • but how would i capture the new customer info? – Josh C. Sep 3 '15 at 19:15
  • Like I mention in the answer, in the search results have a link for 'New...' Which would display your new user form when selected – Adam Sep 3 '15 at 19:17

Let me see if I understand you (because I think you're overthinking the problem).

As a user I want to associate a person with an item. I look up a person (Josh); think I have the correct information and then realize that I have the wrong Josh and start to edit the information. (Or maybe I have Josh's updated phone number and the system is out of date so I edit the phone number.) Or any of an infinite number of possibilities.

So, what do I do. I see a checkbox (or toggle switch) which clears inputted data. There is no need to take me to a new screen. I can stay on this screen and tab through the fields and edit as needed.

If that's the scenario - then I, the user, am facing a common problem - changing form information.

Anytime the user wants to search and replace the existing name (example: "No. I made a mistake. It's not Josh C who I want to put here. It's John C.)

Then, in that case, the new search results will replace the old information on the same screen.

If you're really concerned you can include a history in which users can see previous entries (although, off hand, I really can't see the value in that).

  • Thanks. I am still thinking through the problem myself. The majority use case is a new customer calling in and the user needs to link this new customer (or possibly an existing one) to a ticket. I definitely think this is a common problem, but I need to find the simplest way of protecting existing customer information while allowing the capture of new customer information. I think dedicated ui for editing existing customer info is probably the cleanest approach. – Josh C. Sep 3 '15 at 18:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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