JS写出表格排序的功能

1 篇文章 0 订阅
 <div class="virtual-table-th">
      <span
        v-for="(item, index) in column"
        :key="item.field"
        name="span-virtual" //添加类名方便寻找DOM
        :style="item.width ? `width: ${item.width}px` : 'flex: 1'"
        :class="'col_' + `${index}`" //区别表头列
        >{{ item.title
        }}<span class="caret-virtual" v-if="item.sortable">  //排序按钮
          <i
            class="sort-caret ascending"
            @click="sortableList('ASC', item.field, index)"
          ></i>
          <i
            class="sort-caret descending"
            @click="sortableList('DESC', item.field, index)"
          ></i> </span
      ></span>
    </div>
 function sortableList(item: any, val: any, index: any) {
      if (props.sortChange) {
        props.sortChange(item, val);  //父组件的方法
      }
      if (item == "ASC") {
           //点击升序
        document.getElementsByName("span-virtual")[index].setAttribute("class", "ascen");
      } else {
            //点击降序
        document.getElementsByName("span-virtual")[index].setAttribute("class", "descen");
      }
    }
.ascen {
  .ascending {
    border-bottom-color: #bf1110 !important;
  }
}
.descen {
  .descending {
    border-top-color: #bf1110 !important;
  }
}

排序功能是跟后端配后完成,点击按钮调后端接口,但在写排序按钮的时候发现点击按钮同步了点击高亮样式,困惑了一下下,所以记录一下

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值