Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Backbone.js视图_Javascript_Jquery_Backbone.js_Backbone Views - Fatal编程技术网

Javascript Backbone.js视图

Javascript Backbone.js视图,javascript,jquery,backbone.js,backbone-views,Javascript,Jquery,Backbone.js,Backbone Views,我正在学习Backbone.js。我正在写mvc待办事项清单供学习。 我有这样一个代码: var TaskView = Backbone.View.extend({ el: '#tasks', model: Todo, events: { 'click > li .delete-task' : 'removeTask', 'click > li .complete-task' : 'completeTask' },

我正在学习Backbone.js。我正在写mvc待办事项清单供学习。 我有这样一个代码:

   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 () {

    }
});
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 () {

        }
    });
所以,我无法获取。删除任务,当被单击时。 例如,如果我在第三个li中单击.delete任务,我希望获得第三个li。 我怎么能实现呢

我找到了答案。 我应该编写如下代码:

   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 () {

    }
});
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())
    },
});