Jquery改变在桌上的类一行

时间:2017-04-22 23:32:36

标签: javascript jquery backbone.js handlebars.js

我在我的项目中使用了主干,jquery和把手。

我正试图在点击时更改行类 我的意思是,如果我点击编辑按钮(表格的右侧),它会改变课程。

查看表格截图以了解。

enter image description here

AdminTableView.js

var addAdminPanelView = Backbone.View.extend({

  el:$(".page"),
  events:{
      'click #editButton':'editEvent',
      'click #deleteButton':'deleteEvent'
  },


  editEvent:function(){
      console.log("edit");
      this.$el.children().find("th").addClass("info");
  },

我的模板

 <tbody id="myTable">
  <tr class="active">
    {{#travels}}
    <th>{{user.department.departmentName}}</th>
    <th>{{user.managerID}}</th>
    <th>{{user.firstName}} {{user.lastName}}</th>
    <th>Seyahat Başlangıcı</th>
    <th>Seyahat Sonu</th>
    <th>{{location}}</th>
    <th>{{travelPurpose}}</th>
    <th>{{travelCost}}</th>
    <th>{{projectCode}}</th>
    <th> <a href="/#travel">
        <span id="deleteButton" class="glyphicon glyphicon-minus-sign"></span>
    </a>
        <a href="#">
            <span id="editButton" class="glyphicon glyphicon-edit"></span>
        </a>
    </th>
    {{/travels}}
  </tr>
</tbody>

如果我点击任何编辑按钮,则所有行都添加了类“info”

2 个答案:

答案 0 :(得分:1)

如果在“编辑”按钮单击时触发该事件,似乎就像事件一样。

但你必须知道哪一行 在“event.target”中使用.target可能有助于找到父行。

试试这个:

editEvent:function(e){
      console.log("edit");
      $(e.target).closest("tr").addClass("info");
  },

答案 1 :(得分:0)

试试这个$( "editButton" ).parent( ".active" ).addClass( "yourClass" );或者这个 $( "editButton" ).parent( "tr" ).addClass( "yourClass" ); 我希望它能够工作