Javascript 剑道网格创建新行时,使用现有行中的值自动填充字段
我有5列(剑道网格)从数据库中获取数据。我想做的是,每当我添加新行时,我都希望某些列能够自动动态填充 例如,我有Name、country、state、value和effDate列 姓名、国家/地区、州字段可编辑=false。因此,用户只能编辑value和effDate字段 如果Name=John,Country=USA,State=Alaska,Value=123,effDate=2019年11月9日,当我添加新行时,我希望Name,Country,State字段填充Name-John,Country-USA,State-Alaska。Value和effDate只能为空,以便用户可以添加新数据 我目前正在使用模板。 我试着填充国家栏,但它没有显示任何内容Javascript 剑道网格创建新行时,使用现有行中的值自动填充字段,javascript,jquery,kendo-ui,kendo-grid,kendo-asp.net-mvc,Javascript,Jquery,Kendo Ui,Kendo Grid,Kendo Asp.net Mvc,我有5列(剑道网格)从数据库中获取数据。我想做的是,每当我添加新行时,我都希望某些列能够自动动态填充 例如,我有Name、country、state、value和effDate列 姓名、国家/地区、州字段可编辑=false。因此,用户只能编辑value和effDate字段 如果Name=John,Country=USA,State=Alaska,Value=123,effDate=2019年11月9日,当我添加新行时,我希望Name,Country,State字段填充Name-John,Coun
template: "#= Country #"
在创建新行时,是否有一种动态预填充的方法
我的网格代码模型的一部分:
{
id: "NameKey",
HouseKey: houseKey,
fields: {
Name: { editable: false },
Country: { editable: false },
State: { editable: false },
Value: {
validation: {
pattern: {
value: "^[0-9.]{0,10}$",
message: "Only numbers"
},
required: {
message: "Value is required"
},
}
},
EffDate: { validation: { required: true }, type: "date", format: "{0:MM/dd/yyyy}" },
},
...
部分立柱
columns: [
{ field: "Name", template: "#=(Name== '') ? 'Fields are auto populated' : Name#", title: "Name", width: 250 },
{ field: "Country", template: "#=(Country== '') ? 'Fields are auto populated' : Countr#", title: "Country", width: 210 },
{ field: "State", template: "#=(StateName == '') ? 'Fields are auto populated' : State#", title:"State", width: 200 },
{ field: "Value", title:"Value", width: 200 },
{
field: "EffDate", title;"Date", template: "#= kendo.toString(kendo.parseDate(data.EffDate, 'yyyy-MM-dd'), 'MM/dd/yyyy') #", width: 140
},
],
您可以使用事件来实现该行为。每当用户试图在网格中编辑或创建新条目时,就会调用该事件。它接收当前模型,您可以根据需要更改该模型:
beforeEdit: function(e) {
let model = e.model;
if (model.isNew()) {
model.Name = "John";
model.Country = "USA";
model.State = "Alaska";
}
}
如果我想让它动态工作,该怎么办?我有很多不同名称的数据。“可以是约翰,马特,任何人。”戴维斯只要把他们从任何地方分配给模特就行了。