As AleMonteiro said above, .on() is not a direct replacement for .live() because for .on() to work the element(s) must exist at the time .on() is called. See jQuery.on API documentation for more details on getting .on() to behave sort of like .live().
In your previous post, if input.cancel_live already exists when you are calling on, you can just do:
so all elements matching the child selector that are descendants of the element for the parent selector will have the event. The only one that needs to be present and rendered on the page when this gets created in the element that matches the parent selector.
In your example, you have $('docment'), it should be $(document) - no quotes. You can also use any element that would be an ancestor to input.cancel_ticket.