我想使用Html表单从网格发送数据。
我的模型与此类似:
public class Exam
{
public int Id { get; set; }
public string Name { get; set; }
public int Duration { get; set; }
public virtual List<Question> AvailableQuestions { get; set; }
}
public class Question
{
public int Id { get; set; }
public string Content { get; set; }
public int Points { get; set; }
}
现在,在我的视图中,我有这样的形式:
@model Exam
@using (Html.BeginForm("Add", "Exams", FormMethod.Post))
{
@Html.TextBoxFor(m => m.Name)
@(Html.Kendo().Grid<Question>(Model.AvailableQuestions)
.Name("availableQuestionsGrid")
.Columns(columns =>
{
columns.Bound(c => c.Id);
columns.Bound(c => c.Content);
columns.Bound(c => c.Points);
columns.Template(@<text>/text>).ClientTemplate(@"<a class=""k-button-icontext k-grid-edit"" href=""\#"">Edit</a> | <a class=""k-button-icontext k-grid-delete"" href=""\#"">Delete</a>").Width(100);
})
.Editable(editable => editable.Mode(GridEditMode.PopUp))
.ToolBar(toolbar => toolbar.Template(@"<a class='k-button k-button-icontext k-grid-add' href='/Exams/Add?grid-mode=insert'><span class='k-icon k-add'></span>Add</a>"))
.DataSource(dataSource => dataSource
.Ajax()
.Batch(true)
.Model(model => model.Id(p => p.Id))
.ServerOperation(false))
)
<input type="submit" value="Save">
}
当我输入一些文字时,向网格添加一些问题,然后点击“保存”按钮我的名字字段已绑定,但我的AvailableQuestions列表始终为空。
是否可以在表单提交时将数据从网格传递到控制器?
答案 0 :(得分:0)
如何在表格中提供和解释如何提交Kendo Grid模型以及表格:
我们的想法是,对于每一列,您必须指定一个模板,该模板具有保存该项的值的隐藏输入。