             html += @renderSubmenus option.children
     html
 
+  updateAttributeValueName: ->
+    firstSelected = _.find @attribute.options, (option) -> option.selected
+
+    if firstSelected
+      @attribute.valueName = firstSelected.name
+      @attribute.value = firstSelected.value
+    else if @attribute.unknown && @attribute.value
+      @attribute.valueName = @attribute.value
+    else if @hasSubmenu @attribute.options
+      @attribute.valueName = @getName @attribute.value, @attribute.options
+
   hasSubmenu: (options) ->
     return false if !options
     for option in options

    'blur .js-input':        'onBlur'
    'focus .js-input':       'onFocus'
    'focus .js-shadow':      'onShadowFocus'
    'click .js-option':      'selectItem'
    'click .js-enter':       'navigateIn'
    'click .js-back':        'navigateOut'

    @unhighlightCurrentItem()
    $(document).off 'keydown.searchable_select'
    @isOpen = false

    if !@input.val()
      @updateAttributeValueName()
      @input.val @attribute.valueName

  onKeyUp: =>
    return if @input.val().trim() isnt ''
