Как развернуть пользовательский пункт контекстного меню?

sharepoint.stackexchange https://sharepoint.stackexchange.com//questions/52880

Вопрос

Я создал собственную страницу приложения SharePoint и теперь хочу открыть ее из блока управления редактированием (контекстное меню элемента).Мой XML не скомпилируется, потому что он сообщает мне, что в URL-адресе есть недопустимые символы.А & персонажи являются причиной этого.Но если я использую & вместо этого я могу скомпилировать и развернуть, но URL-адрес неправильный.Это потому, что JavaScrit понимает & символы, куда Visual Studio меня не пропустит.

<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
  <CustomAction Id="SPTest.CustomMenuItem.ButtonClicked"
                RegistrationType="ContentType"
                RegistrationId="0x0101"
                Location="EditControlBlock"
                ImageUrl="/_layouts/IMAGES/workflows.gif"
                Sequence="600"
                Title="My custom menu"
                Description="Click to my custom menu.">
    <UrlAction Url="javascript:OpenPopUpPageWithTitle('~site/_layouts/SP/MyAppPage.aspx?ListId={ListId}&ItemId={ItemId}', RefreshOnDialogClose, 530, 300, 'My custom menu')"/>
  </CustomAction>
</Elements>

Как отформатировать URL-адрес?Я нашел образец, который использовал для своего кода здесь.

Это было полезно?

Решение

Хорошо, я нашел решение.В параметре URL функции JavaScript вместо ~site, я должен был использовать {SiteUrl}.

Итак, узел UrlAction должен быть:

<UrlAction Url="javascript:OpenPopUpPageWithTitle(
                '{SiteUrl}/_layouts/SP/MyAppPage.aspx?ListId={ListId}&ItemId={ItemId}', 
                RefreshOnDialogClose, 
                530, 
                300, 
                'My custom menu')"/>
Лицензировано под: CC-BY-SA с атрибуция
Не связан с sharepoint.stackexchange
scroll top