Я создаю форму, которая генерирует приглашение при отправке. В приглашении есть несколько полей, один из которых представляет собой адрес электронной почты с кнопкой «добавить», который при щелчке должен добавить этот адрес в список адресов электронной почты, которые должны получить приглашение.AngularJS - Как сгенерировать отправку во вложенной форме
Это может быть сделано с помощью одной формы, однако, если пользователь нажимает клавишу ввода при вводе электронной почты, он вызывает submit
на всей форме. Я хотел бы получить результат ввода ключа - когда поле ввода электронной почты сфокусировано - имеет тот же эффект, что и нажатие кнопки «добавить». Я ожидал, что правильный способ решения этой проблемы было бы гнездиться письмо форма ввода в форму приглашения, что-то вроде этого:
<ng-form ng-submit="sendInvite()">
<input type="text" placeholder="Title" ng-model="invitation.title"/>
<ng-form ng-submit="addInvitee()">
<input type="email" placeholder="Title" ng-model="inviteeEmail"/>
<button class="btn" type="submit">add</button>
</ng-form>
<button class="btn" type="submit">Send</button>
</ng-form>
Со следующим JavaScript в контроллере:
$scope.addInvitee = function() {
$scope.invitation.emails.push($scope.inviteeEmail);
$scope.inviteeEmail = '';
}
$scope.sendInvite = function() {
//code to send out the invitation
}
Моя проблема в том, что имеющие вложенные формы (и при этом преобразуются из <form>
в <ng-form>
, не представляя ни один больше не работает.
формы Validate и или предоставить приглашение ... «Вы представляете ....» с возможность отменить, если они не сделали – charlietfl
Спасибо, что, безусловно, способ смягчить проблему, но это не идеальное поведение. –
также может помешать 'enter' по умолчанию, когда поле находится в фокусе. Привяжите обработчик ключа к полю и отвяжите размытие. Невозможно вставить формы – charlietfl