Javascript 级联组合框在将初始值设置为空后删除模型绑定
我的场景: 级联下拉列表以组合框(局部视图)结尾,在剑道网格的主->细节场景中使用 ddl->ddl->ddl->cb 目标:Javascript 级联组合框在将初始值设置为空后删除模型绑定,javascript,asp.net,razor,kendo-ui,cascadingdropdown,Javascript,Asp.net,Razor,Kendo Ui,Cascadingdropdown,我的场景: 级联下拉列表以组合框(局部视图)结尾,在剑道网格的主->细节场景中使用 ddl->ddl->ddl->cb 目标: 页面加载下拉列表正在使用数据逐个初始化 使用一些默认值,组合框应保持为空 在网格上,selecteditemchanged局部视图正在填充数据,组合框应显示相应的元素 就我而言,它的工作原理如下: 页面加载组合框显示“0”(我想是null?) 在选择更改时,它会闪烁所选的值,该值基本上是model.Id,并显示适当的文本 或者,如果在加载父DropDownList数据时
function ParentProductIdDataBound() {
var dropdownlist = $("#ParentProductId").data("kendoDropDownList");
if (dropdownlist.value()) {
OnParentProductIdChange();
}
}
function ParentProductIdChange() {
OnParentProductIdChange();
}
function OnParentProductIdChange() {
var productcombobox = $("#ProductId").data("kendoComboBox");
productcombobox.text(""); <- empty until combo is populated
productcombobox.value("");
productcombobox.enable(true); <- enable combo
productcombobox.dataSource.read(); <- populate combo
}
它看起来像:
解决方案的想法?这个解决方案原来很简单,几乎让人尴尬 我只需要从文本/值(名称/id)对切换到文本/文本,就不再有“闪烁”或消失问题了 转向: 进入: 它会在控制器中引起一些额外的工作,但至少可以工作 我希望它能为我节省一些时间
@(Html.Kendo().ComboBox()
.Name("ProductId")
.DataTextField("Text")
.DataValueField("Value")
.AutoBind(false)
//.Text(Model.ProductId == 0 ? " " : Model.ProductName)
.DataSource(source =>
{
source.Read(read =>
{
read.Action("GetMeansOfProduction", "DemandForMeansOfProduction", new { level = 3 }).Data("onProductComboBoxAdditionalData");
})
.ServerFiltering(false);
})
.Events(e =>
{
e.Change("ProductIdChange");
e.DataBound("ProductIdDataBound");
})
)
@(Html.Kendo().ComboBox()
.Name("ProductId")
.DataTextField("Text")
.DataValueField("Value")
@(Html.Kendo().ComboBox()
.Name("ProductName")
.DataTextField("Text")
.DataValueField("Text")