JSFiddle - React, Tailwind, and code Playground

HTML

<script src="//cdnjs.cloudflare.com/ajax/libs/underscore.js/1.6.0/underscore-min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/backbone.js/1.1.2/backbone-min.js"></script>
<script type="text/html" id="filterViewTemplate">
    <select class="filterByOption">
        <option value="Account">Account</option>
        <option value="Owner">Owner</option>
    </select>

    <span class="cell sort">
        <input class="filterString cell" type="text" />
    </span>
    <a href="#" class="btn small remove">Remove</a>
</script>

JavaScript

var FilterModel = Backbone.Model.extend({});
    var taskView = Backbone.View.extend({
        template: _.template('<h1><%= title %></h1>'),
        initialize: function(){
            this.render();
            this.listenTo(this.model, 'destroy', this.remove);
            console.log(this.model)
        },
        render: function(){

            this.$el.html(this.template(this.model.toJSON()));
            return this;
        },
        events:{
            'click h1': 'removeView'

        },
        removeView: function(){
            this.model.destroy();
            this.el = undefined;
            this.$el = undefined;
            console.log('removed');

        }
    });
    var filterModel = new FilterModel({title: 'Test'});
    var taskview = new taskView({model:filterModel});

    // I make heap snapshot before and after the change!
    setTimeout(function(){
                $("h1").click()}, 3000
    )
    $('body').append(taskview.$el);