我正在构建一个表单,在提交时生成邀请。邀请有几个字段,其中一个是带有“添加”按钮的电子邮件地址输入,点击时应将该地址添加到应接收邀请的电子邮件地址列表中。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
}
我的问题的是,具有嵌套的形式(和这样做从01转换为<ng-form>
,提交任何一个不再有效。
验证形式,或者提供一个提示......“你......提交”有机会取消,如果他们都没有做 – charlietfl 2013-04-10 22:12:25
谢谢,这当然是一个办法缓解这个问题,但这不是理想的行为。 – 2013-04-11 13:20:48
也可以防止在焦点位置处输入缺省值。将键处理程序绑定到字段并取消绑定。不能嵌套表格 – charlietfl 2013-04-11 13:26:08