我正在構建一個表單,在提交時生成邀請。邀請有幾個字段,其中一個是帶有「添加」按鈕的電子郵件地址輸入,點擊時應將該地址添加到應接收邀請的電子郵件地址列表中。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