craftpip/angular-confirm

Enter key doesn't work when modal contains an input with the cursor in it

jbernalvallejo opened this issue · 2 comments

It works for any other key or when input is not focus. However, when both situations occur simultaneously, enter action doesn't get triggered.

Managed to fix the issue. As Angular already submits the form ng-submit function when pressing enter, I did a workaround to get this function calling the button action.

HTML in the modal template

 <form ng-submit="onSubmit()">
     <label>Name</label>
     <input type="text" ng-model="name"/>
</form>

JS modal config

},
onScopeReady: function(scope){
    // call button action when enter is pressed
    var self = this;
    scope.onSubmit = function () {
        self.buttons.confirm.action(scope);
    };
},
buttons: {
    confirm: {
      keys: ['enter'],
      action: function(scope) {
        // ...
        return;
      }
    }
}

Thanks a lot for this