问:点击一个按钮,从服务器上的文件夹下载文件并保留在当前页面上。
当前状态和问题:我有一个CustomWizardPromptControlPage,它将一个简单的按钮写入HTMLTextWriter。按钮的onclick事件触发window.open(urlToDocument,' _blank')。通过使用onclick执行按钮,它实际上允许我下载文件,但是父页面重定向到主页。
已经尝试过:href - 没有下载文件并将我重定向到主页。表单提交 - 没有做任何事情。
如果有人能够给我一些见解,为什么Spotfire会这样做以及我可以做些什么来阻止它发生,我们将不胜感激
- 跟进工作代码示例以获取评论请求
namespace ACompanyName.SpotFire.ExportWithFilters
{
public class ExportWithFiltersWebPromptControl : CustomWizardPromptControl
{
public ExportWithFiltersWebPromptControl(ExportWithFiltersFileSettings settings)
{
this.AddPage(new ExportWithFiltersPage(settings));
}
private class ExportWithFiltersPage : CustomWizardPromptControlPage
{
private readonly ExportWithFiltersFileSettings _settings;
public ExportWithFiltersPage(ExportWithFiltersFileSettings settings) : base("Export with Filters")
{
_settings = settings;
}
protected override void OnGetContentsCore(HtmlTextWriter writer)
{
var domain = "https://dev.AURL.com";
var filename = _settings.ExportWithFiltersFileInfo.Name;
var fullFilePath = string.Format("{0}/{1}/{2}", domain, "Exports", filename);
writer.WriteLine("<a href='{0}' target=\"_blank\">Download Export with Filters</a>", fullFilePath);
}
protected override void OnGetScriptsCore(StringBuilder builder)
{
}
protected override void OnLeavePageCore(FormData data)
{
}
protected override bool OnValidatePromptCore(FormData data)
{
return true;
}
}
}
}
答案 0 :(得分:1)
原来,Spotfire并不想将<button>
放入页面。用一个空白目标的超链接交换它,它就像一个魅力。如果仍然需要一个按钮,那么风格化的div就可以了。