Edit in JSFiddle

var MyView = Backbone.View.extend({
    events: {'click button': 'callRemove'},
    callRemove: function () {
        this.remove(); //removes view from DOM, cleans up events in DOM
        console.log($('#myView').length); //verify its gone, logs 0
    },
    render: function () {
        this.$el.html('<button>invoke remove()</button>');
        return this;
    },
    initialize:function(){this.render();}
});

var myViewInstance = new MyView({el: '#myView'});


<div id="myView"></div>