0

我有一些奇怪的错误。在sharepoint 2010中,我有类似的东西:

        <UrlAction Url="javascript:OpenPopUpPageWithTitle('{SiteUrl}/Style Library/AdminPage/AdminPage.aspx?itemid={ItemId}&#38;listid={ListId}');" />

它有效

但是在sharepoint 2013中我在部署时出错

错误 1 ​​部署步骤“为 SharePoint 安装应用程序”中发生错误:验证应用程序包时出现错误。

应用程序处于自动托管模式。我不知道该怎么做,我在 urlaction 中尝试了它不想工作的任何 js...

4

2 回答 2

2

好的,我发现了。

如果您在 CommandAction 中添加 JavaScript 代码,您的应用程序将不会部署在 SharePoint 中。它将导致以下错误消息(ULS 日志) - 意外异常:验证应用程序包时出现错误:验证应用程序包时出现错误。与此异常相关的其他警告/错误:自定义操作 url 必须以“http:”、“https:”、“~appWebUrl”或“~remoteAppUrl”开头。解决方案是新属性,如 customactions:

            HostWebDialog="TRUE"
            HostWebDialogHeight="420"
            HostWebDialogWidth="510"

我认为它可以帮助某人

于 2013-04-03T12:02:09.960 回答
0

根据MSDN,这是不可能的:

CustomAction 不能包含 JavaScript:任何 UrlAction 或 CommandAction 都必须是要导航到的 URL。除了特定于应用程序的标记外,还可以使用常规自定义操作标记对 URL 进行参数化。

使用 HostWebDialog 似乎是这种情况下的首选方法。您还可以考虑在 App Web 中为您的页面传递一个附加参数,以便识别它是从 CustomAction 打开的。

于 2013-05-08T06:43:36.443 回答