如何更改Kendo Excel按钮内容文本

时间:2015-03-22 07:33:11

标签: css kendo-ui kendo-grid

我有一个具有Excel导出功能的Kendo网格。它会产生一个"导出到Excel"发短信按钮,我想更改其文本,如"发送到Excel"。

 @(Html.Kendo().Grid(Model).ToList())
.Name("Grid")

.Columns(columns =>
{
    //columns.Bound(p => p.BirimAd).Title("Birim").Width(500);
    columns.Bound(p => p.SehirAd).Title("Şehir").HtmlAttributes(new { style = "text-align:center" }).Width(200);
    columns.Bound(p => p.Value).Title("Value").HtmlAttributes(new { style = "text-align:center" }).Width(200);
    //columns.Bound(p => p.Avg).Title("Avg").HtmlAttributes(new { style = "text-align:center" }).Width(200);
})
  .ToolBar(tools => tools.Excel())

.Sortable()

.Excel(excel => excel
    .FileName("Rapor.xlsx")
    .Filterable(true)
    .ProxyURL(Url.Action("Excel_Export_Save", "Report"))
)

.ColumnMenu()
.DataSource(dataSource => dataSource
    .Ajax()

.Read(read => read.Action("Excel_Export_Read", "Report"))
)
    )

和excel按钮的产生方式如下:

<button class="k-button k-button-icontext k-grid-excel"><span class="k-icon k-i-excel"></span>Export to Excel</button>

我正在尝试这个css:

 <style>

     .k-button k-button-icontext k-grid-excel
     {
         content:"Send to Excel";
     }
     .k-icon k-i-excel
     {
         content:"Send to Excel"
     }

 </style>

但它看起来像是同一个文字。我怎么能改变它?

3 个答案:

答案 0 :(得分:5)

使用自定义命令并通过javascript api调用导出

剃刀:

.ToolBar(tools => tools.Custom("Export").Text("Send to Excel").Click("exportExcel"))

使用Javascript:

function exportExcel() {
    var grid = $("#grid").data("kendoGrid");
    grid.saveAsExcel();
});

答案 1 :(得分:3)

我覆盖绑定事件中的文本:

@(Html.Kendo().Grid(Model)
  Events(eventes => {
     eventes.DataBound("bound"); 
  })
  .ToolBar(tools => tools.Excel())
  .Excel(excel => excel
        .FileName("Test.xlsx")
        .Filterable(true)
        .ProxyURL(Url.Action("TestExcel", "Export"))
    )

然后在绑定事件中:

<script>
function bound(e) {
   ...
   $(".k-grid-excel").html('<span class="k-icon k-i-excel"></span>Exportar a Excel');
}

答案 2 :(得分:0)

我认为API多年来已经发生了变化,以下代码在2019年对我有效

  .ToolBar(tb => tb.Excel().Text("Any Text") )