我使用Kendo网格内联编辑模式,编辑后我需要为DropDownList刷新数据源。
原因是我的KendoGrid应该添加和编辑我的DropDownList使用的数据。 我在KendoGrid上编辑数据没有问题,并借助下面的代码刷新DropDownList上的数据。
var dropDownList = $("#Domains").data("kendoDropDownList");
dropDownList.dataSource.read();
#Domains
是我的DropDownList的ID
即使我编辑DropDownList上已选择的数据,一切正常。 但是在KendoGrid(内联模式)中添加新项目并同时编辑在DropDownList上选择的一个较旧项目之后出现问题。
在这种情况下,剑道不会编辑项目,但是它会将编辑后的项目作为新项目添加到数据源中,我们将旧项目和编辑后的项目作为两个单独的项目。 我不知道我是否正确传达了这种情况。
我使用MVC,我定义数据源的方式是这样的:
.DataSource(dataSource => dataSource
.Ajax()
.Events(events => { events.Error("result_handler"); })
.Model(model => model.Id(p => p.Id))
.Create(create => create.Action("AddDomain", "Service", new { customerID = ViewBag.CustomerId }))
.Read(read => read.Action("GetDomainListForGrid", "Service", new { customerID = ViewBag.CustomerId }))
.Update(update => update.Action("EditDomain", "Service"))
.Destroy(destroy => destroy.Action("DeleteDomain", "Service"))
)
如你所见,我设置了模型。就像上面那样。
答案 0 :(得分:0)
不是一个好主意!但在选择DropDownList项之前刷新网格上的数据会有所帮助:
var grid = $("#grid").data("kendoGrid");
grid.dataSource.read();