SaveFileDialog使用c#禁用Sharepoint中的web部件按钮

本文关键字:web 按钮 中的 Sharepoint 使用 禁用 SaveFileDialog | 更新日期: 2023-09-27 18:14:37

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

保存文件或按"取消"后,web部件上的按钮变得无响应。

为什么会发生这种情况,你如何修复它?

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();

SaveFileDialog使用c#禁用Sharepoint中的web部件按钮

阮,

我有类似的问题,你正在经历。由于某些原因,SharePoint不允许多次回发。看看这个链接,它指向另一个StackOverflow问题,在使用导出到CSV方法后,没有控制回发。

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

<script type='text/javascript'>
  _spOriginalFormAction = document.forms[0].action;
  _spSuppressFormOnSubmitWrapper = true;
</script> 
我想这应该能解决你的问题。在回发之后,SharePoint似乎失去了表单的原始动作。如果你设置了这些变量,你可以用它的原始操作来重用表单。

下面是原始线程:生成一个文件下载按钮点击-不破坏其他按钮

我们现场的主程序员给了我解决这个问题的方法。在这里。把这个添加到你的"onclick"事件中。

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