簡體   English   中英

Backbone.js視圖

[英]Backbone.js View

我正在學習Backbone.js。 我正在寫mvc Todo列表進行研究。 我有這樣的代碼:

   var TaskView = Backbone.View.extend({
    el: '#tasks',
    model: Todo,
    events: {
        'click > li .delete-task' : 'removeTask',
        'click > li .complete-task' : 'completeTask'
    },
    removeTask : function () {
        console.log(this.get('model'));
    },
    completeTask : function () {

    }
});

因此,單擊時我無法獲得.delete-task。 例如,如果我單擊第三李中的.delete-task,我想獲得第三李。 我怎么能實現呢?

我找到答案。 我應該寫這樣的代碼:

var TaskView = Backbone.View.extend({
        el: '#tasks',
        model: Todo,
        events: {
            'click > li .delete-task' : 'removeTask',
            'click > li .complete-task' : 'completeTask'
        },
        removeTask : function (e) {
            console.log($(e.target));
        },
        completeTask : function () {

        }
    });

$(e.target)是當前元素。

您可以使用currentTarget來解決問題。

TaskView = Backbone.View.extend({
    el: '#tasks',
    events: {
        'click .delete-task' : 'removeTask'
    },
    removeTask : function (e) {
        alert($(e.currentTarget).text())
    },
});

演示

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM