1

我正在开发我的第一个Orchard (v1.8) 站点。我需要实现一个具有级联下拉列表的表单,即当用户从类别下拉列表中选择一个选项时,下面的项目下拉列表将仅填充相同类别的项目。

理想情况下,类别选项将使用我添加的类别分类法。类别项目将是所选分类术语的内容项目。

我已经查看了自定义表单模块,但我不确定如何做到这一点,而且我在 CMS 中看不到明显的方法?

这项工作是我正在编写的自定义模块的一部分,所以如果您知道如何在 C# 中完成它,那真的会帮助我。

4

1 回答 1

2

没有内置字段会以这种方式运行,因此您必须构建自己的字段。内容类型级别的字段设置可以提供系统分类法之间的选择。然后,字段驱动程序可以检索该设置,使用分类服务检索术语,并将其交给字段的编辑器形状。然后,编辑器形状的模板可以将其格式化为下拉菜单,并在该下拉菜单上连接一个更改事件。选择新的术语后,脚本将AJAX请求发送给模块也提供的控制器操作。该操作接收术语的内容项目 ID 作为参数,查询分类服务以查找带有该术语标记的项目,然后发回带有项目 ID 和显示文本的 JSON 结果。客户端的脚本接收该数据并用它填充第二个下拉列表。在驱动程序的发布编辑器方法中,将选定的内容项持久保存到字段的存储中。

于 2014-05-02T16:04:21.413 回答