SaveFileDialog使用C#禁用Sharepoint中的Web部件按钮

时间:2013-05-20 07:12:26

标签: c# javascript sharepoint sharepoint-2010 savefiledialog

我有一个按钮,打开一个saveFileDialog,将下载的文件保存到客户端PC。

保存文件后,或按取消后,网络部件上的按钮无响应。

为什么会发生这种情况,你如何解决?

webpart的代码(我尝试使用javascript,但没有成功,仍然是同样的问题)

DataTable table = populateDataTable(selectQuery);

System.Web.HttpResponse response = System.Web.HttpContext.Current.Response;

response.ClearContent();
response.Clear();
response.ContentType = "text/plain";
response.AppendHeader("content-disposition", "attachment;filename=EthicsFeedExport " + DateTime.Now.ToString("yyyy-MM-dd") + "s.cv");

StringBuilder sb = new StringBuilder(); \\populate sb

response.Write(sb.ToString());
response.Flush();
response.End();

3 个答案:

答案 0 :(得分:0)

阮,

我遇到了类似于您遇到的问题。出于某种原因,SharePoint不允许多个回发。看一下另一个StackOverflow问题No controls postback after using Export To CSV method的链接。

希望这有帮助。

答案 1 :(得分:0)

我在另一个主题中写了一个答案。请尝试将此javascript代码添加到您的网站部分:

<script type='text/javascript'>
  _spOriginalFormAction = document.forms[0].action;
  _spSuppressFormOnSubmitWrapper = true;
</script> 

我想这可以帮助你解决问题。 SharePoint似乎在回发后松散了表单的原始操作。如果您设置了这些变量,则可以重复使用表单及其原始操作。

这是原始帖子: Generate a file for download on button click - without breaking other buttons

答案 2 :(得分:0)

我们的现场主程序员为我提供了解决方案。这里是。只需将其添加到“onclick”事件中即可。

OnClientClick="window.setTimeout(function() { _spFormOnSubmitCalled = false; }, 10);"