【问题标题】:How to make grid column non editable on the UI only - can set value using code如何使网格列仅在 UI 上不可编辑 - 可以使用代码设置值
【发布时间】:2016-04-19 11:16:37
【问题描述】:

如何使剑道网格列仅在客户端 UI 上不可编辑,但我可以在脚本中为其设置值?

var dataSource = new kendo.data.DataSource({
                data: result,
                schema: {
                    model: {
                        fields: {
                            IsSelected:{type:"boolean",editable:true},
                            InvoiceDate: { type: "date",editable:false }
                        }
                    }
                }
            });

剑道网格

$('#grdClaim').kendoGrid({
    height: "300px",
    sortable: true,
    resizable: true,
    filterable: true,
    editable:true,
    columns: [
        {
            sortable: false,
            filterable: false,
            width: '30px',
            field: "IsSelected",
            title: "<input type='checkbox' id='chkSelectAll' onclick='checkAll()'checked/>",
            template: '<input type="checkbox"  id="selectedIds"  name="selectedIds"  #= IsSelected ? \'checked="checked"\' : "" #  class="chkbx"/> ',
        }]});

我需要做的是在我的 Js 代码上使字段“IsSelected”可编辑,而不能在网格上编辑其值?喜欢:

var grid = $("#grdClaim").data("kendoGrid");
    var dataItem = grid.dataItem($(e.target).closest("tr"));
    dataItem.set("IsSelected", $(e.target).is(":checked") ? 1 : 0);

注意:我使用的是 kendo 2013

【问题讨论】:

  • 帮助我理解。您想以编程方式将isSelected 列设置为editable: false。我说的对吗?
  • @DontVoteMeDown ,不正确退出,我希望 isSelected 字段以编程方式可编辑,但在网格上只读。 kendoGrid 是editable:true
  • @DontVoteMeDown 主要问题是当用户单击包含我的模板的td 时,它会转换为另一个复选框而不是我的模板!
  • 你能在 dojo.telerik.com 上提供一个简单的演示吗?

标签: kendo-ui kendo-grid kendo-asp.net-mvc


【解决方案1】:

您可以在模板中设置 disabled 属性,如下所示,使列不可编辑

columns: [
    {
        sortable: false,
        filterable: false,
        width: '30px',
        field: "IsSelected",
        title: "<input type='checkbox' id='chkSelectAll' onclick='checkAll()'checked/>",
        template: '<input type="checkbox" disabled="disabled"  id="selectedIds"  name="selectedIds"  #= IsSelected ? \'checked="checked"\' : "" #  class="chkbx"/> ',
    }]

【讨论】:

  • disabled="disabled" 将使模板无用,我希望模板工作,当最终用户单击包含我的模板的td 时,将禁用 kendoGrid 编辑功能
  • 我希望在列级别而不是架构级别上像 editable:false 这样的东西,columns: [ { editable:false }]
猜你喜欢
  • 2016-10-05
  • 2015-09-02
  • 2023-04-03
  • 2012-12-09
  • 1970-01-01
  • 1970-01-01
  • 2020-09-29
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多