Sharepoint 发送Infopath表单后的自定义操作

Sharepoint 发送Infopath表单后的自定义操作,sharepoint,redirect,postback,infopath,modalpopup,Sharepoint,Redirect,Postback,Infopath,Modalpopup,我正在Sharepoint 2010中使用启用浏览器的Infopath表单,我希望在单击“提交”并说“谢谢…您的表单已发送…”后显示一个模式弹出窗口,甚至重定向到另一个页面 我无法使用视图(并在提交时更改为该视图),因为表单位于页面中的“选项卡”内。我的意思是,页面包含5个分区,可通过5个按钮访问。 默认打开的DIV是第一个DIV。表格在第五分区内。 提交操作(回发)后,页面将重新加载,并显示第一个DIV,因此用户无法看到带有“谢谢…”的视图 关于如何解决这个问题有什么想法吗? 提前谢谢 编辑2

我正在Sharepoint 2010中使用启用浏览器的Infopath表单,我希望在单击“提交”并说“谢谢…您的表单已发送…”后显示一个模式弹出窗口,甚至重定向到另一个页面

我无法使用视图(并在提交时更改为该视图),因为表单位于页面中的“选项卡”内。我的意思是,页面包含5个分区,可通过5个按钮访问。 默认打开的DIV是第一个DIV。表格在第五分区内。 提交操作(回发)后,页面将重新加载,并显示第一个DIV,因此用户无法看到带有“谢谢…”的视图

关于如何解决这个问题有什么想法吗? 提前谢谢

编辑2

我尝试了安德烈亚斯的解决方案,但没有成功。 这是我的“提交”按钮代码

    public void CTRL114_5_Clicked(object sender, ClickedEventArgs e)
            {

             try
             {
                SPSecurity.RunWithElevatedPrivileges(delegate()
                {
                    this.Submit();                             
                    HttpContext.Current.Response.Redirect("ThankYou.aspx");
                });
             } catch (Exception ex)
             {
                  System.Console.Write(ex.toString());
             }

            }
当我点击Submit时,什么也没发生。无页面重定向,无视图切换,无数据提交。 有什么想法吗?
谢谢大家!

弹出窗口不适用于启用浏览器的表单,您唯一的可能是自定义代码。在提交代码中,可以重定向到静态感谢页面

HttpContext.Current.Response.Redirect("ThankYou.aspx");
编辑:在VSTA编辑器中,确保引用了System.Web。没有实际的例外,很难说什么不起作用。请尝试以下代码并发布输出-

try
{
     SPSecurity.RunWithElevatedPrivileges(delegate()
     {
           this.Submit();
           HttpContext.Current.Response.Redirect("ThankYou.aspx");
     });
}
catch(Exception ex)
{
     //implement your logging logic here
}
编辑2:你能在预览模式下打开表单并调试代码吗?还考虑将日志记录更改为类似的内容:

catch(Exception ex)
{
     using(var writer = new StreamWriter(@"C:\log.txt",true))
        writer.WriteLine("{0}\t{1}", DateTime.Now, ex.Message);
}

因为Console.WriteLine不能与InfoPath一起使用,而且您永远无法获得实际的异常。如果没有错误消息,恐怕很难进一步解决您的问题。

另一种重定向方法是使用查询字符串的“Source”参数。但是,只能重定向到表单所在网站集中的页面。例如

http://[site]/_layouts/FormServer.aspx?XsnLocation=/sites/[site]/formservertemplates/[form].xsn<b>&Source=/sites/[site]/pages/[page]</b>
http://[site]/_layouts/FormServer.aspx?XsnLocation=/sites/[site]/formservertemplates/[form].xsn&Source=/sites/[site]/pages/[page]

如果Thankyu.aspx在当前网站colleciton之外,您可以重定向到中间页面,该页面将重定向到Thankyu.aspx。我听说没有其他方法可以绕过这个问题。

谢谢你的回复,安德烈亚斯。请看编辑后的问题。再次感谢安德烈亚斯。请看新编辑的问题。