Bootstrap table 行编辑导航

/*开启表格编辑方向键导航
方向键(←): VK_LEFT (37)
方向键(↑): VK_UP (38)
方向键(→): VK_RIGHT (39)
方向键(↓): VK_DOWN (40)
*/
function OpenTableEditKeyNavigation() {
    $(document).on("keyup", "tr.editable-select input", function (event) {
        var keyCode = event.keyCode;
        var $this = $(this);
        switch (keyCode) {
            case 37://向左
            case 39://向右
                var $trInputs = $this.parents("tr.editable-select").find("input[type!='hidden']");
                var curInputIndex = $trInputs.index($this);
                var nextIndex = keyCode == 37 ? (curInputIndex - 1) : (curInputIndex + 1);
                if (nextIndex===-1) {
                    nextIndex = $trInputs.length - 1;
                }
                else if (nextIndex === $trInputs.length) {
                    nextIndex = 0;
                }
                $trInputs[nextIndex].focus();
                break;
            case 38://向上
            case 40://向下
                
                var $curTr = $this.parents("tr.editable-select");
                var $trs = $curTr.parents("tbody").find("tr");
                var $trInputs = $curTr.find("input[type!='hidden']");
                var curInputIndex = $trInputs.index($this);

                var curTrIndex = $curTr.index();
                var nextIndex = keyCode === 38 ? (curTrIndex - 1) : (curTrIndex + 1);
                if (nextIndex === -1) {
                    nextIndex = $trs.length - 1;
                }
                else if (nextIndex === $trs.length) {
                    nextIndex = 0;
                }
                var nextTr = $trs[nextIndex];
                if (nextTr) {
                    nextTr.click();
                    $(nextTr).find("input")[curInputIndex].focus();
                }
                break;
            default:
        }
    });
}

 

转载于:https://www.cnblogs.com/tangchun/p/10757275.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值