1

我正在研究 backgrid 以实现网格功能,我需要将 datepicker 添加到 backgrid 单元格而不是使用 Backgrid.DateCell。等待您的回复

示例代码:

           datagrid(collection) : {

                      colomns = [{

                                name : "name",
                    label: "Name",
                    cell : string
                                },
                                {

                                name : "date",
                    label: "Date",
                    cell : string
                                }
                              }],
                        var lgrid = new Backgrid.Grid({
                    columns: columns,
                    collection: collection,
                    emptyText: "no data"
             });
                   this.$("#grids").append(lgrid.render().$el);

                     }

这些是在 backgrid 中定义的列。当我单击日期的字符串单元格时,我需要使用 datepicker 在字符串单元格中填充日期,应该打开一个 datepicker,我需要将日期选择到单元格中。请帮帮我....

感谢和问候 gangadhar v

4

2 回答 2

1

也许有更好的方法来实现它,但我能够这样做。

MyDatePickerCell = Backgrid.Cell.extend({
    editor: MyDatePickerCellEditor,
});

MyDatePickerCellEditor = Backgrid.InputCellEditor.extend({
    events:{},
    initialize:function(){
        Backgrid.InputCellEditor.prototype.initialize.apply(this, arguments);
        var input = this;
        $(this.el).datepicker({
            onClose: function(newValue){
                var command = new Backgrid.Command({});
                input.model.set(input.column.get("name"), newValue);
                input.model.trigger("backgrid:edited", input.model, input.column, command);
                command = input = null;
            }
        });
    },
});
于 2014-02-09T04:01:35.010 回答
0

onClose 在我第一次选择日期时不会触发。经过第二次尝试,它完美地工作。我不知道如何解决这个问题。

于 2019-01-29T10:36:00.957 回答