Как развернуть пользовательский пункт контекстного меню?
-
10-12-2019 - |
Вопрос
Я создал собственную страницу приложения 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')"/>
Не связан с sharepoint.stackexchange