SharePoint Modal Dialog does not work under SharePoint 2013
When migrating our Solutions2Share License Management Solution from SharePoint 2010 to SharePoint 2013 the SharePoint Modal Dialog did not open.
SharePoint 2010 Example:
1: function ShowServerInformation() {
2: var options = {
3: url: '/_admin/Solutions2Share/LicenseManagement/GeneralServerInformation.aspx',
4: tite: 'Server Information',
5: allowMaximize: false,
6: showClose: true,
7: width: 430,
8: height: 230
9: };
10:
11: SP.UI.ModalDialog.showModalDialog(options);
12: return false;
13: }
How to fix this problem
Time needed: 3 minutes
How to fix SharePoint Modal Dialog in SharePoint 2013
- Remove Java Script reference
Remove the following Java Script reference:
<script src=”/_layouts/sp.js” type=”text/javascript”></script>
<script src=”/_layouts/SP.UI.Dialog.js” type=”text/javascript”></script> - Add URL variable
Add to the URL variable “?IsDlg=1″
- Replace command
Replace the command SP.UI.ModalDialog.showModalDialog() with the new command SP.SOD.execute(‘sp.ui.dialog.js’, ‘SP.UI.ModalDialog.showModalDialog’, options);
With these small changes your solution will work correctly.
SharePoint 2013 Example:
1: function ShowServerInformation(featureId) {
2: var options = {
3: url: '/_admin/Solutions2Share/LicenseManagement/ServerInformation.aspx?featureId=' + featureId + "&IsDlg=1",
4: title: 'Server Information',
5: allowMaximize: false,
6: showClose: true,
7: width: 430,
8: height: 230
9: };
10:
11: SP.SOD.execute('sp.ui.dialog.js', 'SP.UI.ModalDialog.showModalDialog', options);
12:
13: return false;
14: }
Looking for a tool to improve SharePoint collaboration in your organization? Check out our Teams Manager!
CEO and Governance Expert – Christian Groß is a Teams expert from the very beginning. In the last 4 years he developed 6 Teams Apps, built up his own service company and additionally founded the largest German-speaking Teams conference.