You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET MVC Kendo Grid级联ComboBox草稿编辑显示ID而非文本问题

解决方案

方法1:页面加载时触发父ComboBox的Change事件

级联ComboBox依赖父控件的选中值加载数据,可在页面初始化完成后手动触发父控件的change事件,强制子ComboBox加载对应数据并自动匹配已保存的草稿值。

$(document).ready(function() {
    const parentCombo = $("#ParentId").data("kendoComboBox");
    const childCombo = $("#ChildId").data("kendoComboBox");

    if (parentCombo.value() !== "") {
        parentCombo.trigger("change");
        // 延迟设置子控件值,避免异步加载数据的时序问题
        setTimeout(() => {
            childCombo.value("@Model.ChildId");
        }, 100);
    }
});

方法2:后端预加载子ComboBox数据源

在编辑页面初始化时,直接根据草稿中保存的父ID,预加载对应子ComboBox的选项,无需等待用户交互。修改MVC代码如下:

@(Html.Kendo().ComboBox()
    .Name("ChildId")
    .DataTextField("Text")
    .DataValueField("Value")
    .CascadeFrom("ParentId")
    .DataSource(source => source
        .Read(read => read.Action("GetChildData", "Home")
            .Data("getParentId")
        )
    )
    .Value(Model.ChildId.ToString())
    .OptionLabel("Select Child")
)

<script>
function getParentId() {
    return { parentId: "@Model.ParentId" };
}
</script>

同时调整后端GetChildData接口,支持接收父ID参数并返回对应子数据:

public ActionResult GetChildData(int? parentId)
{
    var childOptions = new List<SelectListItem>();
    if (parentId.HasValue)
    {
        childOptions = _dbContext.Children
            .Where(c => c.ParentId == parentId.Value)
            .Select(c => new SelectListItem { Text = c.Name, Value = c.Id.ToString() })
            .ToList();
    }
    return Json(childOptions, JsonRequestBehavior.AllowGet);
}

方法3:手动设置子ComboBox的显示文本

如果仅需显示已保存的文本而无需加载完整子选项列表,可直接手动设置控件的值和显示文本:

$(document).ready(function() {
    const childCombo = $("#ChildId").data("kendoComboBox");
    const savedChildId = "@Model.ChildId";
    const savedChildText = "@Model.ChildText"; // 需在Model中存储草稿对应的子文本

    if (savedChildId !== "") {
        childCombo.value(savedChildId);
        childCombo.text(savedChildText);
    }
});

注:此方法适合无需用户重新选择子选项的场景,若需支持重新选择,仍需确保数据源已加载。

内容的提问来源于stack exchange,提问作者SendETHToThisAddress

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 01:44:51