Merge pull request #7565 from MrPetovan/bug/7406-neutralize-enter-in-autocomplete
Prevents Enter from submitting forms in ACL fields
This commit is contained in:
commit
3c7f7b45cd
5 changed files with 12 additions and 6 deletions
|
@ -109,7 +109,14 @@ ACL.prototype.search = function(){
|
|||
|
||||
ACL.prototype.on_search = function(event){
|
||||
if (this.kp_timer) clearTimeout(this.kp_timer);
|
||||
this.kp_timer = setTimeout( this.search.bind(this), 1000);
|
||||
|
||||
// Triggers an immediate search while preventing form submission
|
||||
if (event.key === 'Enter') {
|
||||
this.search();
|
||||
event.preventDefault();
|
||||
} else {
|
||||
this.kp_timer = setTimeout( this.search.bind(this), 500);
|
||||
}
|
||||
};
|
||||
|
||||
ACL.prototype.on_showall = function(event){
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
|
||||
<div id="acl-wrapper">
|
||||
<input id="acl-search">
|
||||
<input id="acl-search" autocomplete="off">
|
||||
<a id="acl-showall">{{$showall}}</a>
|
||||
<div id="acl-list">
|
||||
<div id="acl-list-content">
|
||||
|
|
|
@ -118,7 +118,6 @@
|
|||
|
||||
$acl_allow_input.tagsinput({
|
||||
confirmKeys: [13, 44],
|
||||
cancelConfirmKeysOnEmpty: true,
|
||||
freeInput: false,
|
||||
tagClass: function(item) {
|
||||
switch (item.type) {
|
||||
|
|
|
@ -481,9 +481,9 @@
|
|||
|
||||
var text = $input.val(),
|
||||
maxLengthReached = self.options.maxChars && text.length >= self.options.maxChars;
|
||||
if (self.options.freeInput && (keyCombinationInList(event, self.options.confirmKeys) || maxLengthReached)) {
|
||||
if (keyCombinationInList(event, self.options.confirmKeys) || maxLengthReached) {
|
||||
// Only attempt to add a tag if there is data in the field
|
||||
if (text.length !== 0) {
|
||||
if (self.options.freeInput && text.length !== 0) {
|
||||
self.add(maxLengthReached ? text.substr(0, self.options.maxChars) : text);
|
||||
$input.val('');
|
||||
}
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
<button id="acl-showall" class="btn btn-block btn-default"><i class="fa fa-globe"></i> {{$showall}}</button>
|
||||
</div>
|
||||
<div class="form-group form-group-search">
|
||||
<input type="text" id="acl-search" class="form-control form-search">
|
||||
<input type="text" id="acl-search" class="form-control form-search" autocomplete="off">
|
||||
</div>
|
||||
<div id="acl-list">
|
||||
<div id="acl-list-content"></div>
|
||||
|
|
Loading…
Reference in a new issue