Kendo ui 剑道网格-如何在添加和编辑时使用不同的按钮文本?

Kendo ui 剑道网格-如何在添加和编辑时使用不同的按钮文本?,kendo-ui,kendo-grid,kendo-asp.net-mvc,Kendo Ui,Kendo Grid,Kendo Asp.net Mvc,我有一个简单的自定义,使我的内联可编辑剑道网格 也就是说,当我添加新记录时,更新按钮应该显示“插入”,在编辑模式下,它应该具有默认的“更新”按钮名称 我知道我可以使用如下所示的命令替换按钮名称 columns.Command(commands => { commands.Edit() .Text("MyCustomEdit")

我有一个简单的自定义,使我的内联可编辑剑道网格

也就是说,当我添加新记录时,更新按钮应该显示“插入”,在编辑模式下,它应该具有默认的“更新”按钮名称

我知道我可以使用如下所示的命令替换按钮名称

columns.Command(commands =>
                {

                    commands.Edit()
                        .Text("MyCustomEdit")
                        .UpdateText("MyCustomUpdate")
                        .CancelText("MyCustomCancel");


                })
但只有在插入新记录的情况下,我才能做到这一点

为了更清楚地说明这一点,我们在单击插入新记录时以及单击编辑(编辑现有网格行)时都会显示
更新
取消
按钮

单击“插入新记录”时,我希望看到更新按钮的文本为创建,其中编辑现有行时,按钮的文本应保持为更新

插入

编辑
通过在编辑事件中使用以下代码找到了一种方法

function OnEdit(e){
    if (e.model.isNew())
    {

        var update = $(e.container).parent().find(".k-grid-update");
        $(update).html('<span class="k-icon k-update"></span>Insert');
    }
}
函数OnEdit(e){
如果(e.model.isNew())
{
var update=$(e.container.parent().find(“.k-grid-update”);
$(update.html('Insert');
}
}

您可以通过这种方式使用jQuery找到您的按钮。例如,如果您想更改“addnew”的文本,它将基于您的控制器名称和网格为其“Read”操作调用的函数。假设您的控制器为“FlowerController”,其读取功能为“Flower\u Read”:

$(文档).ready(函数(){
$('a[href=“/Flower/Flower\u Read?grid mode=insert“]).html('span class=“k-icon k-update”>添加新的花');
});
对于行本身上的更新按钮,可以执行以下操作:

$('a[href="/Flower/Flower_Read?grid-mode=insert"]').click(function() {
    setTimeout(function() {
      $('a[class*="k-grid-update"]').html('<span class="k-icon k-update"></span>Create');
    }, 500);
});
$('a[href=“/Flower/Flower\u Read?网格模式=插入“])。单击(函数(){
setTimeout(函数(){
$('a[class*=“k-grid-update”]').html('Create');
}, 500);
});

由于构建DOM的延迟,需要添加超时。

我不太明白这个问题。。。您是否询问如何更改“添加”命令上的文本?
$('a[href="/Flower/Flower_Read?grid-mode=insert"]').click(function() {
    setTimeout(function() {
      $('a[class*="k-grid-update"]').html('<span class="k-icon k-update"></span>Create');
    }, 500);
});