программное создание кнопки на тулбаре формы (без ISV)

MS CRM:
из подсмотренного 🙂 (Thanks Anton Zubarev!)

// Функция создания кнопки
function createToolbarButton(btnTitle, btnId, clickAction, imagePath, btnLabel, includeSpacer) {
    // Создаем разделитель
    var Spacer = '';
    Spacer += '<li tabIndex="-1">';
    Spacer += '&nbsp';
    Spacer += '<img style="clip: rect(0px 4px 17px 0px); background-image: url(/_imgs/imagestrips/control_imgs_1.gif); width: 4px; background-position-y: -55px; height: 17px" alt="" src="/_imgs/imagestrips/transparent_spacer.gif">';
    Spacer += '</li>';

    // Создаем кнопку
    var html = '';
    html += (!includeSpacer) ? '' : Spacer; // Если includeSpacer = true, добавляем разделитель перед кнопкой
    html += '<li id="' + btnId + '" + title="' + btnTitle + '" tabIndex="-1" onclick="window.execScript(action)" action="' + clickAction + '">';
    html += '<span>';
    html += '<a tabIndex=-1 onclick="return false;" href="javascript:onclick();" target=_self>';
    html += (!imagePath) ? '' : '<img tabIndex="-1" alt="' + btnTitle + '" src="' + imagePath + '" />';
    html += '<span tabIndex=0>' + btnLabel + '</span>';
    html += '</a>';
    html += '</span>';
    html += '</li>';

    // Добавляем кнопку в DOM-структуру
    var toolbar = document.all.mnuBar1.rows(0).cells(0).childNodes[0];
    toolbar.insertAdjacentHTML("beforeEnd", html);
}

Вызов:
createToolbarButton("На согласование", "toapprovebuttonid", "ToApprovePriceButton();", "/_imgs/ico_16_4200.gif", "На согласование", true);

Test on the CRM 4.0

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: