Skip to content
GitLab
    • Explore Projects Groups Snippets
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • B bootstrap
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 263
    • Issues 263
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 114
    • Merge requests 114
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Bootstrap
  • bootstrap
  • Merge requests
  • !16722

Close dropdowns when clicking on a file input within

  • Review changes

  • Download
  • Email patches
  • Plain diff
Closed Administrator requested to merge github/fork/archit/close-dropdown-menu-on-file-input-click into master 10 years ago
  • Overview 0
  • Commits 4
  • Pipelines 0
  • Changes 2

Created by: archit

Fixes #16719 (closed)

Compare
  • master (base)

and
  • latest version
    18c66ae2
    4 commits, 2 years ago

2 files
+ 20
- 1

    Preferences

    File browser
    Compare changes
j‎s‎
tests‎/unit‎
dropd‎own.js‎ +19 -0
dropd‎own.js‎ +1 -1
js/tests/unit/dropdown.js
+ 19
- 0
  • View file @ 18c66ae2


@@ -388,4 +388,23 @@ $(function () {
assert.ok($dropdown.parent('.btn-group').hasClass('open'), 'dropdown menu is open')
})
QUnit.test('should close the dropdown if the user clicks on a file-input', function (assert) {
assert.expect(1)
var dropdownHTML = '<div class="btn-group">'
+ '<button type="button" data-toggle="dropdown">Dropdown</button>'
+ '<ul class="dropdown-menu">'
+ '<li><input type="file" id="fileInput" /></li>'
+ '</ul>'
+ '</div>'
var $dropdown = $(dropdownHTML)
.appendTo('#qunit-fixture')
.find('[data-toggle="dropdown"]')
.bootstrapDropdown()
.trigger('click')
$('#fileInput').trigger('click')
assert.ok(!$dropdown.parent('.btn-group').hasClass('open'), 'dropdown menu is closed')
})
})
js/dropdown.js
+ 1
- 1
  • View file @ 18c66ae2


@@ -44,7 +44,7 @@
if (!$parent.hasClass('open')) return
if (e && e.type == 'click' && /input|textarea/i.test(e.target.tagName) && $.contains($parent[0], e.target)) return
if (e && e.type == 'click' && /input|textarea/i.test(e.target.tagName) && $(e.target).attr('type') !== 'file' && $.contains($parent[0], e.target)) return
$parent.trigger(e = $.Event('hide.bs.dropdown', relatedTarget))
0 Assignees
None
Assign to
0 Reviewers
None
Request review from
Labels
1
js
1
js
    Assign labels
  • Manage project labels

Milestone
No milestone
None
None
Time tracking
No estimate or time spent
Lock merge request
Unlocked
2
2 participants
Mark Otto
Administrator
Reference: twbs/bootstrap!16722
Source branch: github/fork/archit/close-dropdown-menu-on-file-input-click

Menu

Explore Projects Groups Snippets