Sharepoint模態窗體(實戰)

廣州華軟發表於2019-04-17

分享人:廣州華軟 無名

 

 

一. 前言

SharePoint二次開發時,需要知道SharePoint有什麼、沒有什麼,才能在開發過程中避免重複造輪子。SharePoint提供了許多開箱即用的功能,這次要介紹的就是模態窗體。

二. 目錄

1.什麼是模態窗體

2.模態窗體的作用

3.如何使用模態窗體

3.1前置條件

3.2模態窗體屬性

3.3父窗體程式碼

3.4子窗體程式碼

4總結

三. 什麼是模態窗體

所謂模態窗體,即在不離開當前頁面的情況下,彈出一個新的獨立子窗體,同時子窗體可以和父窗體進行互動。

在sharepoint中,模態窗體隨處可見,例如檔案上傳功能、檔案共享功能、檔案審批等功能。

 

 

四. 模態窗體的作用

在不離開頁面的情況下,與新窗體進行互動。

五. 如何使用模態窗體

5.1 前置條件

自定義應用程式頁面,需引用SharePoint母版頁

<%@ Page Language="C#" DynamicMasterPageFile="~masterurl/default.master" Inherits=" "       %>

或者,新增如下檔案引用

 

<link rel="stylesheet" href="/_layouts/15/1033/styles/Themable/corev15.css?rev=Y" />

其中,1033 表示英語,2052表示簡體中文

<SharePoint:ScriptLink Name="SP.core.js" runat="server" Defer="False" Localizable="false"/>

<SharePoint:ScriptLink Name="SP.js" runat="server" Defer="True" Localizable="false"/>

<Sharepoint:ScriptLink ID="ScriptLink1" Name="sp.ui.dialog.js" LoadAfterUI="true" Localizable="false" runat="server"></Sharepoint:ScriptLink>

 

 

5.2 模態窗體屬性

標題

說明

url

子窗體url地址

html

HTML程式碼,和URL二選一

x 

子窗體x座標,預設居中

y

子窗體y座標,預設居中

width

寬度

height

高度

showClose

顯示關閉按鈕

autoSize

自動大小

dialogReturnValueCallback

關閉模態窗體回撥函式

 

 

5.3 父窗體程式碼

<button type=’button’ onclick=’Open1()’>彈出子窗體</button>

function Open1(){ 

  var options = {

            width: 900,//寬度

            height: 550,//高度

            url: “https://www.***.com?web=1” //窗體地址

            dialogReturnValueCallback: function (res, val) {

                //關閉模態窗體回撥函式

                //約定: res 值為1 表示操作成功

                // val 子窗體傳遞給父傳遞值,通過val來實現兩個窗體互動

            }

        };

         

        SP.SOD.execute('sp.ui.dialog.js', 'SP.UI.ModalDialog.showModalDialog', options);

}

 

5.4 子窗體程式碼

子窗體可以不做任何操作,但如果需要傳遞值給父窗體,則可以通過自定義關閉子窗體來實現,參考以下程式碼。

<button type=’button’ onclick=’Close1()’></button>

function Close1(){ 

  

window.frameElement.commonModalDialogClose(1/*通常用1表示操作成功*/, ‘操作成功’/*返回給父窗體值,與父窗體互動*/);

 

}

 

六. 總結

 

SharePoint的模態窗體應用場景非常廣泛,為我們開發類似功能提供了便利。

 

 

相關文章