                   deletePressed(elem, event) # handle logic for backspace
                   elem.val resetCommas(elem.val()) # reformat the number in place
                   elem[0].setSelectionRange(newCursorPosition, newCursorPosition) # set the new cursor position
+                  triggerChange(elem)
               
             elem.on 'keypress', (event) ->
               killEvent(event)

                  insertCharacter(elem, event)
                  elem.val resetCommas(elem.val()) # reformat the number in place
                  elem[0].setSelectionRange(newCursorPosition, newCursorPosition) # set the new cursor position

              if keycode == 8 # backspace is pressed
                unless elem[0].selectionStart == 0 # do nothing if it's at the end of the end of the input

                  backspacePressed(elem, event) # handle logic for backspace
                  elem.val resetCommas(elem.val()) # reformat the number in place
                  elem[0].setSelectionRange(newCursorPosition, newCursorPosition) # set the new cursor position
                  triggerChange(elem)
              
              if keycode == 46 # delete is pressed
                unless elem[0].selectionStart == elem.val().length
