【发布时间】:2014-03-19 07:20:57
【问题描述】:
我要提交包含以下内容的表单:
- 文本框和其他编辑器等表单元素。
- 剑道网格其中 是可编辑的。
如下图所示:
我的视图代码是:
@model ProjectName.ReferenceViewModel
@using (Html.BeginForm("MainDocumentSave", "Document", FormMethod.Post, new { @class="MainForm"}))
{
<input type="text" name="ParentReferenceID" id="ParentReferenceID" value="@Model.ID"/>
<input type="text" name="ParentReferenceName" id="ParentReferenceName" value="@Model.Name"/>
@(Html.Kendo().Grid<Invoice.Models.ViewModels.ReferenceViewModel>()
.Name("Reference")
//.TableHtmlAttributes(new { style = "height:160px; " })
.Columns(columns =>
{
columns.Bound(p => p.ReferenceID).Hidden(true).ClientTemplate("#= ReferenceID#" + "<input type='hidden' class='ReferenceID' name='Reference[#= index(data)#].ReferenceID' value='#=ReferenceID#' />");
columns.Bound(p => p.ReferenceName).HeaderHtmlAttributes(new { title = "Reference Name" }).Title("Reference").Width(10).ClientTemplate("#= ReferenceName#" + "<input type='hidden' class='ReferenceName'name='Reference[#= index(data)#].ReferenceName' value='#=ReferenceName#' />");
columns.Bound(p => p.ReferenceDescription).HeaderHtmlAttributes(new { title = "Reference Description" }).Title("Description").Width(10).ClientTemplate("#= ReferenceDescription#" + "<input type='hidden' class='ReferenceDescription' value='#=ReferenceDescription#' />");
//columns.Bound(p => p.DefaultReferenceValue).Title("Value").Width(15).EditorTemplateName("ReferenceValidValue").HtmlAttributes(new { @class = "DefaultValue" }).ClientTemplate("#= DefaultReferenceValue#" + "<input type='hidden' class='DefaultReferenceValue' value='#=DefaultReferenceValue#' />");
})
.Editable(ed => ed.Mode(GridEditMode.InCell))
.Navigatable()
.HtmlAttributes(new { style="height:190px;"})
.DataSource(dataSource => dataSource
.Ajax()
.Batch(true)
.ServerOperation(false)
)
)
}
这里的问题是,在提交表单时,我只能发布编辑器的值,而不能发布 Kendo Grid 的值。
如何发送所有值?
【问题讨论】:
-
如果没有来自网格实例化、模型和控制器的代码,很难判断,但请查看 this example。
-
@AndreiV 您给出的链接示例不起作用。我已经用关于视图的更多详细信息编辑了问题。
标签: javascript jquery html asp.net-mvc kendo-ui