0

我正在使用 KendoUI AutoComplete 在自定义编辑器模板上进行大量查找,该模板会从网格中弹出新行和编辑。Kendo AutoComplete 确实具有 DataTextField 属性,但没有像 DropDownList 那样的 DataValueField 属性。因此,我发现我可以使用一点 Javascript 并在选择处理程序中迭代“dataItem”对象来获取 AutoComplete 中所选项目的值。我将该值放入在 select 事件中使用 @Html.HiddenFor(model => model.SelectedID) 声明的“SelectedID”字段中。

现在,当我从视图中进行保存并在捕获传入模型的控制器操作上有一个断点时,我手动设置值的所有那些 ID 值都是空/空/空白。我已经检查了 DO 并完成了“console.log”以在发布之前读出隐藏字段的值并填充这些值。我更改了数据类型(字符串、guid 等),并将 Html Helper 类型从 HiddenFor 更改为 EditorFor,以确保这些值确实存在。

所以我认为当作为模型一部分的元素的值以“手动”方式填充时,这是一个问题。如果我也将自动完成的文本绑定到模型上的一个字段,那么自动完成的文本就会出现。任何日期字段、复选框和自由格式文本字段也会出现。似乎只是模型绑定字段的值,我在其中手动设置了不会通过“电线”实现的值。有什么想法吗?解决方案?我知道 Selected Value 是可访问的……只需将其正确放入“HiddenFor”字段即可。

4

0 回答 0