2010-01-28 41 views
2

我有一個SharePoint功能,它通過編程方式在自定義列表中創建3個查找,每個列表通過極其相似的CAML標記從3個不同的列表中進行查找。爲什麼SharePoint查找菜單需要雙擊來選擇項目?

CAML中唯一的區別是List,ID,Name,DisplayName和StaticName屬性,但其中一個查找看起來略微不同(具有稍微更「現代」的下拉箭頭)菜單需要雙擊才能選擇一個項目,而不是像單擊其他查找那樣單擊。

也許有人之前已經看到這一點,有什麼我可能會考慮讓這個查詢作爲一個單一的點擊菜單操作的想法?

回答

3

顯示通常與項目的數量,在Firefox觀察時雖然它也呈現爲一個標準選擇元件下拉的樣式。

對於任何其他字段類型這將是有意義的創建自定義字段控制,但是由於該希望事情被命名爲「查找」代碼,查找字段是幾乎不可能延長。

自定義特定字段的最佳方式可能是使用javascript/jquery。當你點擊下拉箭頭時,ShowDropdown(在core.js中)被調用。這將創建一個select元素,其中的選項由文本框的choices屬性中的管道分隔列表設置。

添加一些代碼的網頁,使負載EnsureSelect和FilterChoice或類似的被稱爲創造了選擇的元素。在文本框中設置屬性並選擇元素,以便將文本框隱藏爲隱藏狀態,選擇元素爲可見下拉列表。 SetCtrlFromOpt調用更改而不是模糊/雙擊,以便服務器將讀取和保存的控件正確更新。

同樣的方法可以用來保持組合框,但增加一個點擊事件設置的值,而不是需要雙擊。

+0

這聽起來像很多腿工作來解決這個問題,但到目前爲止,這是我得到的最好的答案。謝謝! – antik 2010-02-09 03:05:19

0

我有完全相同的問題。我注意到的一個區別是,需要雙擊的一個列表框是一個查找字段,而不是具有預先填充選項的選擇字段。不知道這是否有幫助。

+0

我列表中的所有字段都是查找字段。 每個從不同的列表實例查找,但每個列表都是相同的列表類型。每個查找都顯示源列表中的列。 – antik 2010-02-03 16:48:43

1

每個查找字段的源列表有多少項目?

查閱字段顯示了一個「二合一」的時候,源列表中有10項(我不知道,如果10項是確切的限制)。當源列表中有超過10個項目時,查找字段將顯示一個「ListArea」控件,該控件按照您的說法工作。

+0

我想知道是否有多少項目與此有關:有問題的列表確實有更多的項目比其他人(它可能有20左右)。 現在,我的問題是,我想讓行爲消失。它可以改變嗎? – antik 2010-02-04 13:10:47

+0

據我所知你不能。 – jaloplo 2010-02-05 08:40:15