0

我的主干视图中有以下设置:

var SomeView;

SomeView = Backbone.View.extend({
    initialize: function() { this.render(); },
    render: function() { // render form },
    events: {
        "keydown form.registration input": "checkInput"
    },
    checkInput: function(e) {
        console.log(e);
        // this doesn't work but I am searching for such a function
        var attr = e.getAttributeWhichTriggeredEvent;
        $(attr).val();
        // validate...
    } 
});

如您所见,我想获取触发事件的元素的选择器,以便例如使用输入值。

当我在 Chromium 中查看控制台时,我在事件对象中发现了一些(当前)目标属性。不幸的是,它们不包含任何我可以用来识别元素的东西,但也许我看起来还不够……

那么我该怎么做呢?

4

2 回答 2

1

我想你想要..

$(e.target).val()
于 2012-07-12T06:48:55.080 回答
1

DOM 事件对象的类型反映了分派它们的事件类型(例如单击、鼠标按下等)。它们还具有引用与事件相关的 DOM 元素的targetcurrentTarget属性,其中之一可能适合。

请注意,较旧的 IE 不支持event.target但有event.srcElement

于 2012-07-12T06:49:54.643 回答