我如何从 mvc 的剑道 ui 网格的下拉列表中获取选定的值

Posted

技术标签:

【中文标题】我如何从 mvc 的剑道 ui 网格的下拉列表中获取选定的值【英文标题】:How could i get selected value from dropdownlist in kendo ui grid in mvc 【发布时间】:2012-07-14 02:24:25 【问题描述】:

我正在使用 asp.net mvc razor 开发 Kendo UI。我正在尝试将数据库表数据与支持 CRUD 操作的剑道网格绑定。在这里,我需要为我的一个表字段填充一个下拉列表。我使用了以下代码

查看:

@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"))
        )
    )

OptionalEmail.cshtml

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

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

【问题讨论】:

【参考方案1】:

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

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

【讨论】:

名称值不能为空。描述:An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 异常详情:System.ArgumentNullException: Value cannot be null.

以上是关于我如何从 mvc 的剑道 ui 网格的下拉列表中获取选定的值的主要内容,如果未能解决你的问题,请参考以下文章

从下拉列表中选择选项后,Kendo UI Grid 中的下拉菜单显示对象-对象

如何在 MVC 剑道树列表编辑器中实现剑道自动完成下拉菜单

剑道网格“每页项目”下拉列表中的自定义值

在选定的剑道网格 mvvm 中获取剑道下拉列表值/文本/索引

隐藏和显示剑道网格​​的行

下拉列表不在模式表中运行(angularjs 中的剑道网格)