首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Kendo MVC DropdownTree未显示所选值

Kendo MVC DropdownTree未显示所选值
EN

Stack Overflow用户
提问于 2019-05-29 00:11:00
回答 1查看 1.5K关注 0票数 0

我在五月份的页面上有一个Kendo MVC DropdownTree。我正在成功地将从中选择的值保存到数据库中。当我开始编辑数据时,该值从模型中正确返回并在DropdownTree中进行了设置,但是,在下拉树中没有任何项目在视觉上被选中。

当我尝试从单击按钮时读取下拉树的值时,它正确地返回值。

代码语言:javascript
复制
@(Html.Kendo().DropDownTree()
                .Name("VocationID")
                .DataTextField("Name")
                .DataValueField("Id")
                .ValuePrimitive(true)
                .Placeholder("--Select Vocation--")                            
                .Value(Model.VocationID.ToString())
                .DataSource(dataSource => dataSource
                    .Read(read => read
                    .Action("GetVocationTree", "ApplicationForm"))
                )
                .HtmlAttributes(new { style = "width: 250px;", required = "required", validationMessage = "Vocation is required" })
             )
代码语言:javascript
复制
function TestValue() {
        var dropdowntree = $("#VocationID").data("kendoDropDownTree");
        alert(dropdowntree.value());
}

上面的javascript警报正确地返回值,但在DropdownTree中没有显示选中的项目。我还尝试删除ValuePrimitive属性,但都不起作用。

有没有人能帮我找出这里缺了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-31 06:47:24

终于找到了处理这件事的方法。如果有一天它对某人有帮助,就把它贴出来。

此控件的行为稍有不同。您可以将所选项目读取为ID,但需要设置其文本而不是ID来设置所选项目。

获取项值:

代码语言:javascript
复制
            var dropdowntree = $("#VocationID").data("kendoDropDownTree");
            var VocationID = dropdowntree.value().id;

并设置默认值:

代码语言:javascript
复制
            @(Html.Kendo().DropDownTree()
                            .Name("VocationID")
                            .DataTextField("Name")
                            .DataValueField("Id")
                            .Placeholder("--Select Vocation--")
                            .Value(Model.VocationName)

注意"VocationName“而不是ID。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56346276

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档