 
       # Toggle the dropdown label
       if @options.toggleLabel
-        @updateLabel(selectedObject, el, @)
+        @updateLabel(selectedObject, el, this)
       else
         selectedObject
     else if el.hasClass(INDETERMINATE_CLASS)
       el.addClass ACTIVE_CLASS
       el.removeClass INDETERMINATE_CLASS
 
-      if not value?
-        field.remove()
+      field.remove() unless value?
 
       if not field.length and fieldName
         @addInput(fieldName, value)
 
-      return selectedObject
+      selectedObject
     else
       if not @options.multiSelect or el.hasClass('dropdown-clear-active')
         @dropdown.find(".#{ACTIVE_CLASS}").removeClass ACTIVE_CLASS

    } = @options

    $inputContainer = @input.parent()
    $clearButton = $inputContainer.find('.js-dropdown-input-clear')

    @indeterminateIds = []



    # Event listeners

    @dropdown.on 'shown.bs.dropdown', @opened
    @dropdown.on 'hidden.bs.dropdown', @hidden
    $(@el).on 'update.label', @updateLabel
    @dropdown.on 'click', '.dropdown-menu, .dropdown-menu-close', @shouldPropagate
    @dropdown.on 'keyup', (e) =>
      $('.dropdown-menu-close', @dropdown).trigger 'click' if e.which is 27

    @dropdown.on 'blur', 'a', (e) =>
      if e.relatedTarget?
        $relatedTarget = $(e.relatedTarget)
        $dropdownMenu = $relatedTarget.closest('.dropdown-menu')

        @dropdown.removeClass('open') if $dropdownMenu.length is 0

    if @dropdown.find('.dropdown-toggle-page').length
      @dropdown.find('.dropdown-toggle-page, .dropdown-menu-back').on 'click', (e) =>
        e.preventDefault()
        e.stopPropagation()

        @togglePage()

    if @options.selectable
      selector = '.dropdown-content a'

      if @dropdown.find('.dropdown-toggle-page').length
        selector = '.dropdown-page-one .dropdown-content a'

      @dropdown.on 'click', selector, (e) ->
        $el = $(this)
        selected = self.rowClicked $el

        if self.options.clicked
