bootstrap 可编辑列表,实现某个单元格动态控制是否可编辑状态

bootstrap行内编辑列表的实现可借助x-editable组件,也可借助列的formatter属性通过格式化单元格来达到目的。这里要介绍的是如何动态控制单个单元格的是否可编辑状态。

第一种情况:使用x-editable组件下的动态控制

下面以表格中某一列的初始化代码为例
在editable中添加属性:toggleDisabled(这个属性相当于一个函数,通过传入参数,来控制是否可编辑)

...
{title: '合同名称', field: 'contractName', align: 'center',halign:'center',
    formatter:function (value, row, index) {
        return value;
    },
    editable: {
        type: 'text',
        showbuttons:true,
        validate: function (v) {
            if ($.trim(v) == '') {
                return '合同名称不能为空!';
            }
        },
        toggleDisabled:function(isEnable){
            if (isEnable){
                this.enable();// 可编辑
            } else {
                this.disabled();// 不可编辑
            }
        }
    }
},
...

下面是控制该单元格是否可编辑的代码,其中关于某个单元格的选择,视具体情况而定

// 可编辑状态
$("#TrackingTable tr[data-index='0'] a[data-name='contractName']").editable('toggleDisabled',true)

在这里插入图片描述

// 不可编辑状态
$("#TrackingTable tr[data-index='0'] a[data-name='contractName']").editable('toggleDisabled',false)

在这里插入图片描述


第二种情况:使用formatter格式化后的日期单元格

此处以bootstrap datetimepicker插件为例进行说明

...
{title: '合同签订日期', field: 'contractDate', align: 'center',halign:'center',
    formatter:function (value, row, index) {
        if(value==undefined){
            return "<input type='text' value='' class='form-control datetimepicker'>";
        }
        else{
            return "<input type='text' value='"+new Date(value).format("yyyy-MM-dd")+"' class='form-control datetimepicker'>";
        }
    }
},
...
// 可编辑状态
$("#TrackingTable tr[data-index='0'] .datetimepicker").prop("disabled", false).datetimepicker()

在这里插入图片描述

// 不可编辑状态(为灰色,不可点击)
$("#TrackingTable tr[data-index='0'] .datetimepicker").prop("disabled", true).datetimepicker()

在这里插入图片描述

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Bootstrap是一个开源的前端框架,提供了丰富的CSS样式和JavaScript插件,可以快速构建漂亮的网页界面。而jQuery是一个流行的JavaScript库,简化了HTML文档遍历、事件处理、动画效果等操作。 要实现编辑表格,可以通过结合使用Bootstrap和jQuery来实现。首先,使用Bootstrap的表格样式,可以使表格具有美观的外观和响应式设计。然后,使用jQuery来处理表格的编辑功能。 首先,对于每个单元格,可以添加一个点击事件,这样当用户点击单元格时,可以进行编辑操作。通过jQuery的事件处理方法,可以在点击事件中将单元格内容转换为可编辑状态,例如将文本转换为文本框。 其次,可以为表格的每一行添加一个保存按钮。当用户编辑完毕后,点击保存按钮时,可以通过jQuery的事件处理方法,将编辑后的内容保存下来,然后将保存按钮替换回普通的文本显示,完成编辑操作。同时,可以在保存按钮的点击事件中添加相关验证和处理逻辑,例如对输入做校验、更新数据等。 最后,可以为表格的每一行添加一个删除按钮。当用户点击删除按钮时,可以通过jQuery的事件处理方法,获取到该行的相关数据,并进行删除操作。 通过结合使用Bootstrap和jQuery,可以使表格具有漂亮的外观和交互性。利用Bootstrap的样式和布局,可以快速构建出易用和美观的表格界面。而通过jQuery的事件处理方法和DOM操作,可以实现表格的编辑、保存和删除功能。这样,用户可以方便地对表格进行修改和管理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值