分享人:广州华软 无名

一. 前言

对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的模态窗体应用场景非常广泛,为我们开发类似功能提供了便利。

Sharepoint模态窗体(实战)的更多相关文章

  1. VB6关于判断模态窗体的问题

    模态窗体也有人叫模式窗体,是否为模态窗体由Show方法的参数决定: 语法 object.Show style, ownerform Show 方法的语法包含下列部分: 部分 描述 object 可选的 ...

  2. delphi模态窗体最小化会隐藏的问题

    在使用delphi创建模态窗体的时候最小化窗体会导致最小化的窗体不可见,再次点击主窗体才会显示. 在这个模态窗体中增加以下函数 procedure WmSysCommand(var msg: TMes ...

  3. 游戏UI框架设计(四) : 模态窗体管理

    游戏UI框架设计(四) --模态窗体管理 我们在开发UI窗体时,对于"弹出窗体"往往因为需要玩家优先处理弹出小窗体,则要求玩家不能(无法)点击"父窗体",这种窗 ...

  4. 关于DatePicker在模态窗体下失效的问题

    最近用bootstrap做了一个租赁相关的管理系统,由于前端知识薄弱,也是编查资料边做.关于一些控件的用法,也是从网上查资料.下面,来说一下在写前端页面时遇到的几个坑. 这个系统中,日期控件用的是Da ...

  5. 自制模态窗体闪烁效果: MessageBeep & FlashWindowEx

    SetFocus(hwnd_frame_preview); //设置焦点 /** 模拟模态窗口动作 **/ MessageBeep(0xFFFFFFFF); //0xFFFFFFFF SystemDe ...

  6. Delphi: 模态窗体最小化

    源起: 近期所介入的几个项目中,最后视频生成窗体,为一模态对话框.因生成时间可能较长,所以其窗体可以最小化,它最小化时同时最小化主程序,唤醒时主程序再复原. 代码亦是8年前本人所写,一直那样用了,也没 ...

  7. FMX 模态窗体

    FMX 模态窗体 dlg := TForm2.Create(nil);  dlg.ShowModal(procedure(ModalResult: TModalResult)  begin       ...

  8. Qt无边框窗体-模拟模态窗体抖动效果

    目录 一.概述 二.效果展示 三.功能实现 四.相关文章 原文链接:Qt无边框窗体-模拟模态窗体抖动效果 一.概述 用Qt开发windows客户端界面确实是一大利器,兼顾性能的同时,速度相对来说也不错 ...

  9. Electron基础 - 如何创建模态窗体

    在开发桌面端应用我们常常需要弹出一个提示窗体或者对话框,而提示窗体和对话框和普通窗体的区别是,在提示框出现时,其它窗体就被锁定了,必须要等到提示框被正确关闭时其它窗体才能“解锁”,这种类型的窗体叫做模 ...

随机推荐

  1. MySQL常见备份方案

    MySQL常见备份方案有以下三种: mysqldump + binlog lvm + binlog xtrabackup 本例为方便演示,数据库里面数据为空.下面开始动手 mkdir /opt/bac ...

  2. Vue.js——60分钟组件快速入门

    一.组件简介 组件系统是Vue.js其中一个重要的概念,它提供了一种抽象,让我们可以使用独立可复用的小组件来构建大型应用,任意类型的应用界面都可以抽象为一个组件树: 那么什么是组件呢?组件可以扩展HT ...

  3. bootstrap学习地址2017.6.1

    http://www.runoob.com/bootstrap/bootstrap-tutorial.html

  4. HTTPS加密原理

    http(超文本传输协议) 一种属于应用层的协议 缺点: 通信使用明文(不加密),内容可能会被窃听 不验证通信方的身份,因此有可能遭遇伪装 无法证明报文的完整性,所以有可能已遭篡改 优点: 传输速度快 ...

  5. 玩转spring MVC(九)---Spring Data JPA

    偷个懒 在网上看有写的比较好的,直接贴个链接吧:http://***/forum/blogPost/list/7000.html 版权声明:本文为博主原创文章,未经博主允许不得转载.

  6. session会话管理

    session会话和cookie一起被称为会话跟踪技术,主要通过保存在服务器端的session数据和客户端浏览器的cookie数据共同完成用户访问服务器的足迹记录. 1. 什么是会话 会话sessio ...

  7. Github管理自己的代码-远程篇

    一.名词解释 Git Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版 ...

  8. Go 语言之三驾马车

    interface Go是一门面向接口编程的语言,interface的设计自然是重中之重.Go中对于interface设计的巧妙之处就在于空的interface可以被当作"Duck" ...

  9. BZOJ_2693_jzptab_莫比乌斯反演

    BZOJ_2693_jzptab_莫比乌斯反演 Description Input 一个正整数T表示数据组数 接下来T行 每行两个正整数 表示N.M Output T行 每行一个整数 表示第i组数据的 ...

  10. WPF 列表开启虚拟化的方式

    正确开启虚拟化的方式 列表如ListBox,ListView,TreeView,GridView等,开启虚拟化 ScrollViewer设置CanContentScroll=True 直接在模板中,设 ...