SharePoint 2007 單列表模糊查詢SPD定制


應用場景:項目中總會遇到一些列表,存着是用戶、項目等數據,而我們需要查詢有哪些項目,這時候,就需要用到模糊查詢了,而這樣的查詢,基本不需要跨列表,所以,也沒必要配置復雜的搜索,用Designer(簡稱spd)配置數據視圖,就可以做到。

如下圖,我們先建個測試列表,插入測試數據,比較亂,大家不要見笑啊。

clip_image002

打開spd,打開網站,根據母版頁新建一個頁面(當然,你開心的話,也可以建一個頁面布局,新建一個頁面,只要能用spd,就OK),如下圖:

clip_image004

然后,插入數據視圖(先選中要插入數據視圖的位置,最好在spd設計模式下,然后插入就可以了,否則位置可能不太准),如下圖

clip_image006

顯示我們要查詢的列表數據,如下圖

clip_image008

然后,選擇我們需要的字段(我這里用了標題、創建時間),插入多項目視圖(其他選項也有應用場景,有興趣可以試試)

clip_image010

如下圖,顯示出來我們列表里的所有項目了(當然,樣式很難看,你可以找美工尋求幫助,設計成你喜歡的樣子),我們添加需要的參數,進行模糊查詢使用

clip_image012

新建參數,即可,名字隨意,但最好見名知義

clip_image013

再然后,就是配置篩選了。在數據視圖里找到<xsl:variable name="Rows" select="/dsQueryResponse/Rows/Row"/>,這句話,在里面修改為

<xsl:variable name="Rows" select="/dsQueryResponse/Rows/Row[($Title = '' or contains(@Title,$Title)&gt; 0)]"/>

[($Title = '' or contains(@Title,$Title)&gt; 0)]意思是Title為空,或者Title字段里包含Title查詢字符串,有點亂哈,@的是字段名,$的是查詢字符串。

即可完成模糊查詢,下面,我們在url上傳值,試試我們的模糊查詢,好使不好使。

如下圖:

clip_image016

當然,如果我們要查詢的是漢字的話,那么,我們需要對漢字進行escape編碼,js腳本就可以實現了。然后,寫一個input標簽,一個button標簽,一個事件,就完成我們的單列表模糊查詢了,下面看我簡單的小例子吧,js寫的不夠精細,其實如果想要input回車也能查詢,加個事件監視回車就可以咯,大家自己開動腦筋吧。

<div>

<script type="text/javascript">

function search()

{

var biaoti = document.getElementById("searchbox").value;

document.location = "/Pages/SingleListSearch.aspx?Title="+escape(biaoti);

}

</script>

<table style="width: 100%" cellpadding="0" cellspacing="0" class="style1">

<tr>

<td><input name="searchbox"></td>

</tr>

<tr>

<td><button onclick="search()">查詢</button></td>

</tr>

</table>

</div>

如下圖,實現結果,不是很炫,但很實用:

clip_image018

總結:我不否認,sharepoint隨着版本提升,VS開發的功能越來越強勁,當然,我們不要忘了最簡單的工具spd,幾分鍾就可以搞定,不必去寫webpart,挺好的方式,記下來,給大家參考,寫了一個多小時的博客,居然越寫越精神,吃個鹵蛋睡覺去了。^_^大家晚安。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM