部署时自定义操作URL错误:部署步骤中发生错误

时间:2013-04-03 10:01:05

标签: javascript sharepoint-2013

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

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

它的工作原理

但在sharepoint 2013中,我在部署时遇到错误

  

错误1部署步骤“安装SharePoint应用程序”时出错:验证应用程序包时出错。

app处于自动投票模式。我不知道该怎么做,我尝试了任何js在urlaction它不想工作...

2 个答案:

答案 0 :(得分:2)

好的,我发现了。

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

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

我认为它可以帮助某人

答案 1 :(得分:0)

根据MSDN,这是不可能的:

  

CustomAction不能包含JavaScript:任何UrlActions或   CommandActions必须是要导航到的URL。 URL可以是   除了使用普通自定义动作标记参数化   特定于应用程序的令牌。

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