2013-04-03 35 views
3

我在CMS_USER表中添加了两个新的自定义字段。kentico cms中自定义字段的级联下拉列表

这两个字段都是整数类型,窗体控件是下拉列表类型。

当前这两个下拉列表都是由编辑控制设置中的SQL查询填充的。

我想实现功能,因为当用户从第一个下拉列表中选择任何值比第二个下拉列表将填充第一个下拉列表的选定值的条件。

第二个下拉列表将填写第一个下拉选定索引已更改。

我该怎么做。

路径为管理员登录 - >CMSSiteManager - >管理 - >用户 - >编辑用户 - >自定义字段

第一下拉是公司名称和第二是公司地址

enter image description here

任何帮助理解。

回答

3

我想到的唯一想法(如果您不想创建自定义控件)是在SQL查询中解析宏。所以应该可以使用以下

SELECT AddressID, AddressName FROM TableWithAdresses WHERE AddressCompanyID = {% EditedObject.GetValue("CompanyID") %} 

作为第二个下拉列表的查询。使用集成的SQL调试(CMS站点管理器 - >管理 - >系统 - >调试 - > SQL调试)来查看发生了什么。

+0

谢谢洛基,它在第一次加载页面时工作正常。但是当我改变第一个下​​拉列表的索引时,它比第一个下拉列表的旧选定值更新,因此它不更新第二个下拉列表。 –

+0

这可能是因为EditedObject中的值未被更改。你可能不得不忍受它或做自己的表格控制。我没有更多的想法。 :/ – rocky

+0

谢谢洛基,我正在尝试创建自定义表单。 –