我想要按照此example显示进度条而不使用ajax来下载文件。不使用ajax下载文件
我使用基诺,html和webapi。我有低于该按钮的点击事件调用HREF代码
this.getMeData= function() {
uRlPath("/api/GetSomeData?id=" + 12)
+ "&name=" + getName.toString()
+ "&downloadtoken=" + new Date().getTime());
$('#myLink').click();
location.href = $('#myLink').attr('href');
};
这是我的HTML
<tr>
<td class="labelText">
<button data-bind="click: getMeData">
Download Data
</button>
</td>
</tr>
<tr>
<td>
<a id="myLink" data-bind="attr: { href: uRlPath }" style="visibility: hidden">Open </a>
</td>
</tr>
我现在想请我的HREF
这是点击事件的一些功能我的webapi方法返回我cookie和二进制文件
public HttpResponseMessage GetSomeData(int id, string name, string downloadtoken)
{
var returnData= new HttpResponseMessage(HttpStatusCode.OK);
returnData.Content = new ByteArrayContent(mybyteArray);
var cookie = new CookieHeaderValue("downloadtoken", downloadtoken);
returnData.Headers.AddCookies(new CookieHeaderValue[] { cookie });
returnData.Content.Headers.ContentDisposition =
new System.Net.Http.Headers.ContentDispositionHeaderValue("attachment");
returnData.Content.Headers.ContentType = new MediaTypeHeaderValue("application/pdf");
returnData.Content.Headers.ContentDisposition.FileName = "myfile.pdf";
return returnData;
}
要非常精确我想要有与示例中提供的行为相同的行为。在示例中,他们使用表单提交,但我没有任何形式,因为我只是使用HTML,淘汰赛。我已经包含了示例中提到的所有库。
如果您需要更多输入信息,请告诉我。
我需要同类的例子中提供的机制。在例子中,他们使用表单提交,我没有任何形式提交,因为我使用基诺和HTML。我想要的是调用按钮上的webapi服务。此服务返回我的PDF文件。所以我想要的是显示一些进度条或什么东西,直到文件被下载。你提到我提供的例子吗?另外我不能使用window.open打开新窗口。 – Happy 2014-11-03 08:06:54