2010-04-21 26 views
3

我知道這是一個相當常見的URL編碼錯誤。我懷疑的問題是MOSS過濾器webpart用於過濾基於從過濾器webpart傳遞給它的查詢字符串參數的datapart webparts結果。MOSS篩選器webpart不能在查詢字符串中使用&符號

當查詢字符串包含&(與號)符號時,dataview webpart將無法顯示任何結果,但不會顯示任何錯誤

當我更換符號在查詢字符串下面%26,然後我得到一個異常「輸入字符串的不正確的格式」

http://localhost/subsite/Pages/Test.aspx?SS=Test%20Governance%20&%20Directors 沒有造成錯誤,但過濾器(SS)傳遞給數據查看webpart沒有顯示任何結果。

http://localhost/subsite/Pages/Test.aspx?SS=Test%20Governance%20%26%20Directors 更換&有26%產生一個異常「輸入字符串的不正確的格式」被拋出

我們可以使用查詢字符串中的符號從過濾器的WebPart?我讀過消費者Web部件讀取這個作爲另一個參數傳遞給它,也許這是問題?儘管我已經將Filter webpart配置爲僅傳遞第一個參數。

+1

我對MOSS一無所知,但帶有%26的第二個URL絕對是在查詢參數中包含&符號的正確方法。如果它扼殺它,我會把它算作一個bug。有一些關於對這個角色進行雙重URL編碼的討論('?SS = Test%20 Governance%20%2526%20Directors') - 這是否對你有幫助? – bobince 2010-04-21 10:50:13

+0

感謝鮑勃,但雙編碼沒有產生過濾結果,但它也沒有導致錯誤。 – van 2010-04-21 11:00:32

回答

1

也只是不得不改變&並在最後...

0

對我來說,在SharePoint 2010 SP1查詢字符串(URL)過濾,bobince的雙重網址編碼工作對我來說八月更新..謝謝鮑勃我拉我的頭髮

1

SP的查詢字符串URL過濾器Web部件中存在一個錯誤。

如果字段類型爲「多行文本」並且值包括'&'字符,則查詢字符串URL過濾器將不起作用。即使你將它編碼到%26。

將列類型更改爲「單行文本」。看看是否奇蹟般地解決了你的問題。

+0

如果要求使用多條文字線, – 2015-09-30 15:15:40

+0

Kumar,好評。我們無法控制客戶的要求。如果字段類型必須是「多行文本」,那麼&字符必須替換爲列表中的其他內容。另一個選項,如果MS修復其查詢字符串URL過濾器Web部件錯誤,以便它正確支持類型爲「多行文本」的字段。 – Gilbert 2015-10-01 14:55:53

0

默認情況下,如果沒有編碼,SharePoint將編碼&%26,然後編碼&%26。 同時將參數&useFiltersInViewXml=1添加到過濾器視圖URL。它應該適合你。

+0

我無法弄清楚第二個「encode&to%26」在那裏做什麼。 – 2017-09-22 05:43:18