標籤:style blog http java color get
SharePoint列表使用中,經常會用到下拉框,而有些特殊的需求,會用到聯動的下拉框,在SharePoint中預設沒有這樣的欄位,所以如果實現,我們需要自己想辦法。
這裡,我們介紹如何使用JQuery+JavaScript用戶端物件模型實現,下面讓我簡單介紹下實現的全過程。
1、建立基礎列表CityList,儲存的是城市名稱,使用預設欄位Title;
2、列表CityList的所有欄,我把Title欄位的名稱改為了City Name,如:
3、建立基礎列表AreaList,用於儲存所有區和關聯的城市,如:
4、列表AreaList的所有欄,這裡Title是區的名稱,CityName是查閱項,關聯自城市列表,如:
5、欄CityName的詳細屬性,如:
6、建立我們用來展示的列表,City一欄來自CityList,類型查閱項;Area一欄來自AreaList,類型查閱項;預設建立新項目,添加City的如下:
7、預設建立項目,Area欄效果,會顯示出欄Area所有的內容:
8、在建立頁面上,新增內容編輯器,添加如下代碼:
<sharepoint:scriptlink name="SP.js" runat="server" ondemand="true" localizable="False"></sharepoint:scriptlink><script language="javascript" src="/_layouts/15/Jquery/jquery-1.7.1.js" type="text/javascript"></script><script language="javascript" src="/_layouts/15/Jquery/jquery.SP.LinyuService.js" type="text/javascript"></script><script type="text/javascript">$(document).ready(function() { SPCustomServiceGetSelect("City","Area","AreaList","CityName","Title");//源父欄位名,源子欄位名,源列表列表,父欄位名,子欄位名 })</script>
9、再次開啟建立項目頁面,發現和一開始不一樣了,這裡Area欄只是None,如:
10、在欄City裡選中北京,如:
11、查看Area欄的內容,只是北京的幾個區,不再是所有區了,說明我們的指令碼生效了,如:
12、當我們選中重慶的時候,因為測試資料中沒有為重慶添加區,所以顯示為None,如:
13、查看我寫的JS指令碼,這是引用的所有指令碼;我的這一聯動查閱項,就是基於這個指令碼和JQuery庫實現的,如:
總 結
當我想到聯動下拉框,首先想到就是JQuery實現,在SharePoint中,很多前台的應用,使用JQuery都非常方便,當然,指令碼我會附加,有興趣的可以拿去使用。
在寫指令碼的時候,我盡量封裝成類庫,前台調用即可,有特殊需要的下載後自己修改吧。
附 指令檔
http://download.csdn.net/detail/linyustar/7562499