¿Cómo implementar el elemento de menú contextual personalizado?
-
10-12-2019 - |
Pregunta
Hice una página de aplicación de SharePoint personalizada y ahora quiero abrirlo desde Editar bloque de control (menú contextual del artículo).Mi XML no se compilará porque me dice que tengo personajes ilegales en la URL.Los personajes de &
están causando esto.Pero si uso &
, puedo compilar y desplegar, pero la URL está incorrecta.Esto se debe a que el Javascrit entiende los caracteres &
, donde Visual Studio no me dejó pasar.
<?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>
¿Cómo formatea la URL?Encontré la muestra que usé para mi código aquí .
Solución
OK, encontré la solución.En el parámetro URL de la función JavaScript, en lugar de ~site
, debería haber usado {SiteUrl}
.
por lo que el nodo de la urlacción debe ser:
<UrlAction Url="javascript:OpenPopUpPageWithTitle(
'{SiteUrl}/_layouts/SP/MyAppPage.aspx?ListId={ListId}&ItemId={ItemId}',
RefreshOnDialogClose,
530,
300,
'My custom menu')"/>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a sharepoint.stackexchange