Comment déployer un élément de menu contextuel personnalisé ?
-
10-12-2019 - |
Question
J'ai créé une page d'application SharePoint personnalisée et je souhaite maintenant l'ouvrir à partir du bloc de contrôle d'édition (menu contextuel de l'élément).Mon XML ne se compile pas car il me dit que j'ai des caractères illégaux dans l'URL.Le &
les personnages sont à l'origine de cela.Mais si j'utilise &
à la place, je peux compiler et déployer mais l'URL est fausse.C'est parce que JavaScrit comprend &
personnages, où Visual Studio ne me laisse pas passer.
<?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>
Comment formater l'URL ?J'ai trouvé l'exemple que j'ai utilisé pour mon code ici.
La solution
C'est bon, j'ai trouvé la solution.Dans le paramètre URL de la fonction JavaScript, au lieu de ~site
, j'aurais dû utiliser {SiteUrl}
.
Le nœud UrlAction devrait donc être :
<UrlAction Url="javascript:OpenPopUpPageWithTitle(
'{SiteUrl}/_layouts/SP/MyAppPage.aspx?ListId={ListId}&ItemId={ItemId}',
RefreshOnDialogClose,
530,
300,
'My custom menu')"/>