Kendo ui 如何将父id传递给剑道UI子网格新记录编辑器
我有一个显示数据库记录列表的树视图。当用户选择一条记录时,我用相关的记录详细信息填充一个网格。外键是sourceid 我按如下方式传递所选记录的id:Kendo ui 如何将父id传递给剑道UI子网格新记录编辑器,kendo-ui,kendo-grid,kendo-asp.net-mvc,Kendo Ui,Kendo Grid,Kendo Asp.net Mvc,我有一个显示数据库记录列表的树视图。当用户选择一条记录时,我用相关的记录详细信息填充一个网格。外键是sourceid 我按如下方式传递所选记录的id: .Read(read => read.Action("AquisitionNotes_Read", "AquisitionNotes").Data("GetCurrentSourceID")) GetCurrentSourceID函数的作用很简单: function GetCurrentSourceID() { return {so
.Read(read => read.Action("AquisitionNotes_Read", "AquisitionNotes").Data("GetCurrentSourceID"))
GetCurrentSourceID函数的作用很简单:
function GetCurrentSourceID() {
return {sourceid: currentSourceID };
}
这很有效
但是,当我想添加一条新记录时,如何将currentSourceID值添加到日志中?如果我尝试显而易见的方法:
.Create(update => update.Action("AquisitionNotes_Create", AquisitionNotes").Data("GetCurrentSourceID"))
编辑器中的值(当然是0)具有优先级并被传递
如何强制实际的sourceid覆盖编辑器的值?还是我用错误的方式解决了问题
- 布拉德
DataSource
比如说
@(Html.Kendo().Grid()
.DataSource(data=>data.Ajax()
.Model(m=>{
m.Field(field=>field.Whatever).DefaultValue(TheValue);
})))
多亏@user5135401给我的线索,我才弄明白 如果要设置静态默认值,则user5135401的解决方案有效。我不知道有什么方法可以实现动态默认值表单Razor。这是您按照以下步骤进行操作的方式: 从网格的.Edit事件调用JS函数,如:
.Events(events => events.Edit("SetDefaultSourceID"))
然后,该函数返回值,在我的例子中是所选TreeView项的外键值:
function SetDefaultSourceID(e) {
if (e.model.isNew()) {
//set the required field value
e.model.set("sourceid", currentSourceID);
}
}