为什么SharePoint查找菜单需要双击才能选择项目?

时间:2010-01-28 17:08:11

标签: sharepoint-2007 caml

我有一个SharePoint功能,它以编程方式在自定义列表中创建3个查找,通过非常相似的CAML标记从3个不同的列表中选择一个。

CAML中唯一的区别是List,ID,Name,DisplayName和StaticName属性,但其中一个查找看起来略有不同(有一个稍微更“现代”的下拉箭头)而不是其他两个和同样的菜单要求我双击以选择项目,而不是像其他查找一样单击。

可能有人之前已经看过这个并且知道我可能会考虑将这个查找作为单击菜单运行吗?

3 个答案:

答案 0 :(得分:3)

显示的下拉样式通常与项目数相关,但在firefox中查看时它也会呈现为标准选择元素。

对于任何其他字段类型,创建自定义字段控件是有意义的,但由于代码需要将事物命名为“查找”,因此几乎无法扩展查找字段。

自定义特定字段的最佳方法可能是使用javascript / jquery。单击下拉箭头时,将调用ShowDropdown(在core.js中)。这将创建一个select元素,其中的选项设置自文本框的choices属性中的竖线分隔列表。

向页面添加一些代码,以便在加载时调用EnsureSelect和FilterChoice或类似代码来创建select元素。在文本框上设置属性并选择元素,使文本框显示为隐藏,选择元素是可见的下拉列表。让SetCtrlFromOpt调用更改而不是模糊/双击,以便正确更新服务器将读取和保存的控件。

可以使用相同的方法来保留组合框,但添加单击事件来设置值而不需要双击。

答案 1 :(得分:1)

每个查找字段的源列表中有多少项?

当源列表有10个项目时,查找字段显示“组合”(我不确定10项是否是确切限制)。当源列表包含10个以上的项目时,查找字段显示“ListArea”控件,该控件按照您的说法工作。

答案 2 :(得分:0)

我有完全相同的问题。我注意到的一个区别是,需要双击的一个列表框是查找字段,而不需要双击的列表框是具有预先填充选项的选择字段。不知道这是否有帮助。