【问题标题】:Add image controls to toolbar via Kendo通过 Kendo 将图像控件添加到工具栏
【发布时间】:2013-02-07 18:23:45
【问题描述】:

我想在顶部工具栏的右上角添加一些名为更新、删除和添加列的按钮状图像(单击时将处理下面的数据)。同样,这些图像会在点击时调用事件。

这是最好的方法吗?

这会通过模板完成吗?不太确定我是否理解这些。模板是否存在其他依赖项?

$("#grid").kendoGrid({
     columns: [{field: "patientName", title: "Patient Name"},
               {field: "MRN", title: "MRN"},
               {field: "account", title: "Account#"},
               {field: "dateOfBirth", title: "Date of Birth"}, 
               {field: "room", title: "Room"},
               {field: "bed", title: "Bed"},
               {field: "admitDate", title: "Admit Date" }],

     //toolbar: [
     //{"name": "create"}, 
     // {"name": "save"}, 
     //  {"name": "cancel"}
     // ],

     dataSource: {
       data:people
     },

     height:300,
     scrollable:true,
     pageable: true,
     pageSize: 2,
     sortable: true                
  });

【问题讨论】:

    标签: kendo-ui


    【解决方案1】:

    您可以使用toolbar.template 并执行以下操作:

    $("#grid").kendoGrid({
        columns   : [
            {field: "patientName", title: "Patient Name"},
            {field: "MRN", title: "MRN"},
            {field: "account", title: "Account#"},
            {field: "dateOfBirth", title: "Date of Birth"},
            {field: "room", title: "Room"},
            {field: "bed", title: "Bed"},
            {field: "admitDate", title: "Admit Date" }
        ],
        toolbar   : [
            {"name": "create", template: "<img class='k-grid-add' src='add.png'/>"},
            {"name": "save", template: "<img class='k-grid-save-changes' src='save.png'/>"},
            {"name": "cancel", template: "<img class='k-grid-cancel-changes' src='cancel.png'/>"}
        ],
        dataSource: {
            data    : people,
            pageSize: 2
        },
        editable  : true,
        scrollable: true,
        pageable  : true,
        sortable  : true
    });
    

    class 值很重要,因为这是 Kendo UI 用于将标准处理程序绑定到此图像单击事件的方法。

    另外pageSize需要在dataSource中定义。

    为了使图标向右对齐,您应该定义以下样式:

    #grid .k-toolbar {
        text-align: right;
    }
    

    其中#grid 是您网格的id

    在此处查看一个正在运行的示例:http://jsfiddle.net/OnaBai/Y9vhE/ 唯一的问题是,由于图像未加载,您会看到它缺少图像,但它们仍然可以正常工作。

    【讨论】:

    • 抱歉,我是调用 toolbar.template 还是只是下面数据的表示?只是在寻找如何在代码中实现。另外,如果我希望它们都正确对齐(彼此相邻),有没有办法在按钮/图像的“组”上调用样式属性?
    • 完美。你是最棒的OnaBai!
    • 糟糕,还有一个问题:在我添加 pageSize 的那一刻,网格就消失了。此外,pageSize 究竟指的是什么?
    • 嗯!不应该消失。它指的是在开始分页之前网格中显示的行数(查看我在答案中引用的 running example 并检查差异)。作为奖励:-) 你可能会看到我删除了height。它是行的网格空间的高度。您可能会说 10 行,而您没有空间查看 10 行,然后您必须滚动才能看到其余的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多