繁体   English   中英

Kendo UI Grid中的``添加和编辑''弹出窗口的不同标题和更新按钮名称(Telerik 2018)

[英]Different title and update button name for Add and Edit popup in Kendo UI Grid (Telerik 2018)

问题1:由于“添加新记录”和“编辑”弹出标题是相同的“编辑”(Telerik演示网址: https : //demos.telerik.com/aspnet-mvc/grid/editing-popup ),请尝试使用以下代码更改标题。

$(".k-grid-edit").on("click", function () {
    $(".k-window-title").text("Edit");
    $(".k-grid-update").text("Update");
    console.log("Edit");
});
$(".k-grid-add").on("click", function () {
    $(".k-window-title").text("Create");
    $(".k-grid-update").text("Save");
    console.log("New");
});

控制台会记录相应的文本,但不会更新标题和“更新”按钮的文本。

Q2:添加和编辑调用Web API。 即使调用成功,也会显示弹出窗口,并且不会重新加载网格。

using (var client = new HttpClient())
{
    client.BaseAddress = new Uri(ConfigurationManager.AppSettings["KpiApiUrl"]);
    var postTask = client.PostAsJsonAsync("users", userAccess);
    postTask.Wait();

    var result = postTask.Result;
    if (result.IsSuccessStatusCode)
    {
        var readTask = result.Content.ReadAsStringAsync();
        readTask.Wait();
        if (readTask.Result.Trim('"').Equals("Success"))
        {
            RouteValueDictionary routeValues = this.GridRouteValues();
            return RedirectToAction("GetUsers", routeValues);
        }
    }
    return View("GetUsers", LoadUser());
}

请给我建议。

Version Info Telerik 2018.1.221.545 MVC 5.2 .NET 4.6

最简单的方法是绑定到网格的编辑事件,这将使您轻松更改标题。

我提供了一个dojo,向您展示如何执行此操作。 https://dojo.telerik.com/anoceSux

我只是访问了正在编辑的项目的“模型”,如果认为它是新项目,则更改标题以创建,否则我们知道它已经存在,因此只需在标题中输入产品名称即可。

至于您的API并未使用新数据重新加载网格,这是因为您是从其外观返回view ,而不是网格正在以DataRequestResult对象的形式或通过映射查找的预期JSON对象返回的view您的数据。 假设您正在将DataSourceRequest对象发送/绑定到API控制器,那么您应该返回以下内容:

public JsonResult SomeAction([DataSourceRequest] DataSourceRequest request, T Model){
 ..do some things here....... 
 return Json(model.ToDataSourceResult(request, ModelState)); 

}

其中T是您要更新/创建的项目的模型

如果缺少任何内容或需要扩展,请告诉我,我将相应地更新答案。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM