我试图在更改模板后根据 DropDownList 值重新绑定列表视图数据。我已经包含了一个 JSFiddle 供参考。当我当前重新绑定时,模板中的值是未定义的。谢谢!
我在想最好的处理方法是在“选择”或“改变”功能中:
var cboDetailsCategory = $("#detail").kendoDropDownList({
data: [
"All",
"Customer",
"Location",
"Meter",
"Other"],
select: function (e) {
var template = $("#" + e.item.text()).html();
console.log("template", template);
$("#details").html(template);
},
change: function (e) {
},
请参考 JSFiddle 链接和这个图形作为视觉
这是一个更长的工作流程:
- 用户完成名称搜索并单击搜索按钮。
- 名称结果填充在列表视图中,使用模板单独呈现为按钮控件。
- 用户然后单击名称结果之一(显示为按钮文本)。
- 类别下拉列表('All' <--default 、'Location'、'Customer'...)使用户能够定位他们想要查看的数据主题。“全部”是默认设置,显示有关所选名称的所有详细信息。
- 因此,默认情况下会填充“全部”模板。
- 如果用户想查看“位置”详细信息(模板),他们从下拉列表中选择它。
- 模板显示,但值都是空白的。填充它的唯一方法是再次单击名称(按钮)。
我想消除必须重新单击按钮(名称)来填充模板(“位置”等...)的需要。
我整理了一个显示结构的 JSFiddle。虽然由于数据是私有的并且通过安全网络提供服务,但我无法访问它。
请参阅 JSFiddle:我认为问题在于 onclick 事件会抓取数据 uid 并将其传递给初始默认模板(名为“全部”,但它不包含在代码中,因为它很长)。当用户更改下拉列表(cboDetailsCategory)并选择一个新模板时,我会丢失数据。
谢谢你的帮助。我真的坚持这一点,它是当前的节目终结者。