我想要按照此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