[英]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.