When you have a text field in eDocBuilder set to use a dropdown field for input on the Data Capture tab, the pipe | character is used to differentiate between the value that is shown to the user and the value that is going to show in the field.
For example, having "A|B" without the quotes entered in the dropdown for an input field would mean that the client would see A on the dropdown when customizing the template, and B would show on the field. What is to the left of the | character is what is shown on the input control, and what is to the right of the | character is what will be returned from the selection and shown on the field on the document surface.
For a situation like "A|B|C" the additional pipe | character is going to break the input selections on the field, as a line cannot have more than one pipe | character on a line, and it is always used to differentiate between the value shown as a choice, and the value to be shown on the field.
Since the pipe | character is a reserved character in an input field, it cannot be shown in the selections that are shown in the dropdown. You will need to use some other character in the text in the dropdown input control, other than the pipe | character. But if you are using a field that is setup for vbscripting, then you could choose to use some other character in the input field dropdown, and replace it with the pipe | character when the template is updated.
The replace() command can be used to replace a character in the text being populated back to the field on the document. If the name of the field is "inputField" without the quotes, and a colon character : was being used in the text to the right of the pipe | character in the dropdown options, then the replace command would be formatted like replace(inputField, ":","|") to replace any colons with pipes when the contents of inputField are sent to the field on the document.