2016-06-23 2 views
-1

下記の「x」要素をクリックするとタブを閉じる処理ができません。タブは、左側にクリックされたモデルの属性です。だから私はそれを閉じようとしていたが、私はそれを扱うことができない。ここでxクリックでタブを閉じる方法は?

は、私はXの要素の上にそれを閉じる必要があり、それがどのように見えるかです:ここでは

は、私の見解は、私はそのタブ、名前と内のテキストをレンダリングするよレンダリングでは、それ。タブタイトルの右側にあるx要素をクリックすると、タブを閉じることができます。関数 "close"を書く必要があるかどうかわからない。

var DocView = Backbone.View.extend({ 
    el: $("#doc"), 
    events: { 
    "click #remove": "close", 
    }, 
    template: _.template($('#doc-template').html()), 
    initialize: function() { 
    this.render(); 
    }, 
    render: function() { 
    this.$el.html(this.template({ 
     attributes1: this.attributes 
    })); 
    console.log(this.attributes); 
    return this; 
    }, 
    close: function(e) { 

    }, 
}); 

誰も私が答えてください助けることができるかどうか。

+0

を行うべきか/どのような、サイドメニューとかは共有コードでのビューの一部である場合私たちは知っていない、またはあなたは、タブを作成するために使用しているもののプラグイン閉じる。問題を再現するために必要なコード、つまりHTML、CSSなどとコードを共有してください。 [mcve]を参照してください。 –

+0

以下は、未知の推測です。要素とビューのインスタンスがメモリに残っているため、将来、メモリリークや関連するバグが発生する可能性があります。 –

答えて

0

これはトリック

var DocView = Backbone.View.extend({ 

    el : $("#doc"), 

    events: 
    { 
     "click #remove": "close", 
    }, 

    template: _.template($('#doc-template').html()), 

    initialize: function() 
    { 
     this.render(); 
    }, 

    render: function() 
    { 
     this.$el.html(this.template({attributes1 : this.attributes })); 
     console.log(this.attributes); 
     return this;   
    }, 

    close: function(e) 
    { 
     this.undelegateEvents(); 
     this.$el.empty(); 
     this.stopListening(); 
     return this; 
    }, 
}); 
+0

うわー、ありがとう! – Reollyn

関連する問題