knockoutjs + easyui.treegrid 可编辑的自定义绑定插件

这篇博客介绍了如何结合KnockoutJS和EasyUI TreeGrid创建一个可编辑的自定义绑定插件。该插件支持URL CRUD操作,允许双击编辑,单击单元格自动保存,以及包含四个功能按钮。示例代码包括HTML结构和JavaScript实现,帮助开发者了解如何应用此插件。
摘要由CSDN通过智能技术生成

目前仅支持URL的CRUD。不需要的话可以却掉相关代码,把treegrid的data直接赋值给viewModel,然后用ko提交整个data

1、支持双击编辑

2、单击Cell,自动保存编辑。

3、4个功能按钮。

 

插件源码:

 

ko.bindingHandlers.etreegrid = {
    editing: false,
    editIndex: 0,
    init: function (element, valueAccessor, allBindings, viewModel, bindingContext) {
        var self = ko.bindingHandlers.etreegrid;
        var opts = valueAccessor();
        $(element).treegrid({
            url: opts.url,
            treeField: opts.treeField,
            idField: opts.idField,
            onDblClickRow: function (node) {
                if (viewModel.add)
                    editRow(node);
            },
            onClickCell: function () {
                if (viewModel.add) {
                    saveRow();
                }
            }
        });

        viewModel.add = function () {
            addRow(getSelectedRow());
        };

        viewModel.edit = function () {
            editRow(getSelectedRow());
        };

        viewModel.remove = function () {
            removeRow(getSelectedRow());
        };

        viewModel.cancel = function () {
            var node = getSelectedRow();
            if (viewModel.onCancel) {
                viewModel.onCancel(node);
            }
            $(element).treegrid("unselectAll");
            try {
                if (self.editing) {
              
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值