我正在使用asp.net mvc剃须刀在Kendo UI上工作。我正在尝试将数据库表数据与支持CRUD操作的kendo网格绑定(bind)。在这里,我需要为我的表字段之一填充一个下拉列表。我使用了以下代码

查看:

@model IEnumerable<MvcApplication1.PriceOption>
@(Html.Kendo().Grid(Model)
        .Name("Grid")
        .Columns(columns =>
        {
            //columns.Bound(p => p.ProductTitle).ClientTemplate("<input type='checkbox' disabled='disabled'name='Discontinued' <#= Discontinued? checked='checked' : '' #> />");
            columns.Bound(p => p.ProductTitle).EditorTemplateName("OptionalEmail");
            columns.Bound(p => p.OptionTitle);
            columns.Bound(p => p.Price);
            columns.Bound(p => p.Frequency);
            columns.Command(command => { command.Edit(); command.Destroy(); }).Width(200);



        })
        .ToolBar(toolbar => toolbar.Create())
            .Editable(editable => editable.Mode(Kendo.Mvc.UI.GridEditMode.InLine))
        .Pageable()
        .Sortable()
        .Scrollable()
        .DataSource(dataSource => dataSource
            .Ajax()
            .Events(events => events.Error("error_handler"))
            .Model(model => model.Id(p => p.ProductID))
            .Create(create => create.Action("CreateOption", "ZiceAdmin"))
            .Read(read => read.Action("Read", "ZiceAdmin"))
            .Update(update => update.Action("UpdateOption", "ZiceAdmin"))
            .Destroy(update => update.Action("DeleteOption", "ZiceAdmin"))
        )
    )

可选Email.cshtml
@model string
@(Html.Kendo().DropDownList()
    .Name("ProductTitle")
    .Value(Model)
    .SelectedIndex(0)
    .BindTo(new SelectList(ViewBag.ProductTitle))
 )

在这里,我需要存储从下拉列表中选择的项目。但是它始终显示为空。我如何从下拉列表中获取选定的值。

最佳答案

这是一个错误。删除名称,它将作为ViewModel的一部分提交回服务器:

@model string
@(Html.Kendo().DropDownList()
    .Value(Model)
    .SelectedIndex(0)
    .BindTo(new SelectList(ViewBag.ProductTitle))
 )

关于asp.net-mvc-3 - 我如何从Kendo UI Grid中的dropdownlist中获取选定的值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11483972/

10-13 05:39