表格数据对调及上下移动

78 阅读1分钟

前言

今天做需求遇到了这种表格数据不想通过拖拽完成位置切换的问题,所以只能生成按钮进行操作两条数据进行位置对调。

两个元素换位子;

function swapArr(arr, index1, index2) {
    arr[index1] = arr.splice(index2, 1, arr[index1])[0];
    return arr;
}

置顶移动

function toFirst(fieldData,index) {
    if(index!=0){
        fieldData.unshift(fieldData.splice(index , 1)[0]);
    }
}

向上移动一格

function upGo(fieldData,index){
    if(index!=0){
        fieldData[index] = fieldData.splice(index-1, 1, fieldData[index])[0];
    }else{
        fieldData.push(fieldData.shift());
    }
}

向下移动一格

function downGo(fieldData,index) {
    if(index!=fieldData.length-1){
        fieldData[index] = fieldData.splice(index+1, 1, fieldData[index])[0];
    }else{
        fieldData.unshift( fieldData.splice(index,1)[0]);
    }
}

嫌弃麻烦的话也可以直接调用第一种方法也是可以的!

转载自www.cnblogs.com/huihuihero/