Разработка
27
Июл
0

Модальное окно в стиле CRM

Сегодня запилим такую нехитрую штуку как модальное диалоговое окно (в виде DIV’а). При этом будем использовать стандартную функцию, которую использует сам CRM для отображения модальных окон.

  • Для начала создайте такой HTML Веб-ресурс с именем new_di.html:
    <html>
    <head>
        <meta charset="utf-8">
        <script src="/WebResources/ClientGlobalContext.js.aspx" type="text/javascript"></script>
        <script>
            function closeDlg() {
                var result = "123";
                Mscrm.Utilities.setReturnValue(result);
                try {
                    closeWindow(true); // Close the dialog box
                }
                catch (e) { }
            }
        </script>
    </head>
    <body>
        <h1>My First Heading</h1>
        <p>My first paragraph.</p>
        <input id="Close" type="button" value="Close" onclick="closeDlg();" />
    </body>
    </html>
    

    Здесь у нас простая HTML-страница, которая содержит два важных элемента:

    • Функцию closeDlg, которая записывает «ответ» работы диалога в системную переменную и закрывает диалог;
    • Кнопку, по которой будет закрывать диалог.
  • Затем создайте JS Веб-ресурс с таким кодом:
    function testDlg() {
        var DialogOption = new Xrm.DialogOptions;
        DialogOption.width = 500;
        DialogOption.height = 420;
    
        var WebResourceURL = "http://crm2015/superfirma/WebResources/new_di.html";
    
        Xrm.Internal.openDialog(WebResourceURL,
                                DialogOption,
                                null, null,
                                CallbackFunction);
    }
    
    function CallbackFunction(returnValue) {
        alert(returnValue);
    }
    
    

    Функция testDlg открывает с помощью стандартной CRM функции Xrm.Internal.openDialog модальный диалог, а внутрь него отображает HTML-страницу по заданному URL HTML Веб-ресурса. При закрытии выводим в алерте переданную из него переменную;

  • Далее подключите JS Веб-ресурс к форме и вызовите функцию testDlg – откроется модальное диалоговое окно. Щелкните по кнопке Close – диалог закроется, а в алерте отобразится возвращенная из него переменная.


Комментарии (0)

*

code