а зачем вам создавать и нажимать "доп. поле", если вы можете показывать поле Name по изменению значения дропдауна?
нарисуйте, что именно вы хотите получить в результате - и нам не надо будет гадать, и вам будет понятнее, что на самом деле вы делаете
если говорить о том, как это сделать просто, то делается в html полная форма со всеми полями, которые могут понадобиться, и потом javascript-ом открываются и прячутся поля по изменению значений других полей - дропдаунов, чекбоксов, радиобатонов итд
"корзиной" вам может служить скрытое текстовое поле input, в который через запятую можете добавлять ваши id при выборе разных продуктов
затем отправляете заполненную форму на сервер и там делаете нужный вам mapping полей формы по вашим моделям
keep it simple