       @open()
       evt.stopImmediatePropagation()
 
-    @$container.$search.bind "keydown", (evt) => @keydown(evt)
-    @$container.$search.bind "keyup",   (evt) => @keyup(evt)
-    @$container.$search.bind "focus",   (evt) => @focus(evt)
-    @$container.$search.bind "blur",    (evt) => @blur(evt)
-    @$container.$search.bind "invalid", (evt) => @invalid(evt)
+    @$container.$search.bind "keydown", $.proxy(@keydown, @)
+    @$container.$search.bind "keyup",   $.proxy(@keyup, @)
+    @$container.$search.bind "focus",   $.proxy(@focus, @)
+    @$container.$search.bind "blur",    $.proxy(@blur, @)
+
+    @$target.bind "change", $.proxy(@change, @)
 
     return true
 

    if @target.id.length
      $("label[for=#{@target.id}]").unbind "click"

    @$dropdown.unbind()
    @$container.$search.unbind()
    @$container.unbind()

    return true

  activate: ->
    @$container.$search.trigger("focus")

      @disabled = true
      @enable()

  reset: ->
    @deselect_all()

