从模板中取值到流星中的js文件

Take value from template to js file in meteor

我正在使用 {{#each}} 循环迭代 div 元素,具体取决于由辅助函数 return 编辑的数组。现在我想在单击按钮时保存元素的 id,例如当我单击第一个元素中的按钮时,单击按钮应该 return 该元素的 id。

         <div class="row">
            {{#each db}}
            <div class="col-md-4">
                <a href="#" class="product-name" id="packageSelected">{{ this.title }}</a>
                <div class="small m-t-xs">
                    {{this.description}}
                </div>   
                <button class="btn btn-sm btn-primary" id="packageNext" value="{{this._id}}">Next</button> 
            </div>
            {{/each}}
         </div>

当我点击按钮时,return只有第一个元素的 ID,而不是被点击按钮的元素的 ID。

Template.package.events({
    'click #packageNext':function(event){
        event.preventDefault();
        var packageSelected=$("#packageNext").val();
        console.log(packageSelected);
    }
});

我尝试使用以下代码获取标题,但它是一样的。

Template.package.events({
    'click #packageNext':function(event){
        event.preventDefault();
        var packageSelected=$(".m-t-xs").text();
        console.log(packageSelected);
    }
});

还有一种更简单的方法:在 Meteor 模板事件中,this 将是当前数据上下文。所以只是:

Template.package.events({
  'click #packageNext'(event) {
    console.log(this); // the whole object
    console.log(this._id); // the _id of the object
  }
});