2

我的模板中有以下内容

<a href="javascript:void(0)" tab-name="Personal Information" {{action "switchTab" target="view"}}>Personal Information</a>

我的观点如下

App.SidebarView = Ember.View.extend({
    templateName: 'sidebar',
    actions: {
        switchTab: function(e){
             //Some Code
        }
    }
});

单击时如何获取选项卡名称属性

4

2 回答 2

1

您只需要捕获一个与 DOM 相关click的事件,例如获取事件对象,在action没有事件对象的内部传递,所以尝试将您的视图更改为:

在您的模板中删除action

<a href="javascript:void(0)" tab-name="Personal Information">Personal Information</a>

然后在您的视图中注册该click事件:

App.SidebarView = Ember.View.extend({
  templateName: 'sidebar',
  click: function(e){
    var tabName = $(e.target).attr("tab-name");
    console.log(tabName);
  }
});

示例 jsbin:http: //jsbin.com/ETURoGA/1/edit

希望能帮助到你。

于 2013-10-08T12:32:48.953 回答
-1

我认为你可以这样做:

App.SidebarView = Ember.View.extend({
    templateName: 'sidebar',
    actions: {
        switchTab: function(event, view){
            var tab-name = $(event.target).attr("tab-name")
            // some code
        }
    }
});
于 2013-10-08T09:57:20.120 回答