Ⅰ 如何使用javascript在按鈕點擊事件里打開下載界面下載html/chm等瀏覽器可以直接打開的文件
這個需要修改HTTP頭的ContentType才能實現,js無法直接控制HTTP頭信息,所以無法通過JS來完成以下功能,但可由伺服器端的動態網頁(如ASP,PHP,JSP等)設置ContentType來實現htm等文件的下載.
Ⅱ 用js控制下載彈出框
如果你用了ASP動態語言的話可以用這個方法:
點擊鏈接後把f和n參數傳給download函數就可以首先下載了
<%
function download(f,n)
'f文件全路徑,n下載文件的文件名
on error resume next
Set S=CreateObject("Adodb.Stream")
S.Mode=3
S.Type=1
S.Open
S.LoadFromFile(f)
if Err.Number>0 then
Reaponse.status="404"
else
Response.ContentType="application/octet-stream"
Response.AddHeader "Content-Disposition:","Attachment;filename="&n
Range=Mid(Request.ServerVariables("HTTP_RANGE"),7)
if Range="" then
Response.BinaryWrite(S.Read)
else
S.Postion=Clng(Split(Range,"-")(0))
Response.BinaryWrite(S.Read)
end if
end if
Response.end
end function
dim filename
d=replace(request("d"),"../","")
d=replace(d,".asp",".err")
'必須防止下載asp文件。
filename="down/"&d
'response.write filename
call download(server.MapPath(filename),d)
%>
上面用的是服務端的方法。
如果你用的完全是靜態語言,那就不能用程序來實現了,因為靜態語言都是客戶端代碼,瀏覽器記錄了用戶的操作,語言是沒法修改的,就只有兩種方法了:
1.把pdf都壓縮成zip,這樣轉過去就是下載了
2.修改瀏覽器設置,這只能解決一個客戶端。在瀏覽器的工具欄上點擊:工具-》Internet選項-》程序-》管理載入項,然後把PDF禁用
Ⅲ 為什麼用迅雷下載地址欄會出現javascript:;
Javascript:是說執行後面的語句,javascript:;說明執行了一句空語句(就是沒有任何作用的語句)。
說明沒有安裝迅雷的firefox插件。在迅雷裡面可以找的到。
Ⅳ 如何使用js實現頁面下載功能
在按鈕上寫屬性onclick="函數名()",作用是綁定click事件如然後在腳本處寫上對應的函數即可,在函數中回跳轉到答相應的文件路徑就行。如function Click(){ window.location.href="文件的url地址";}
Ⅳ javascript使用window.open(url)方式實現下載文件功能,但卻有時不能彈出下載框
可能是瀏覽器的問題,谷歌瀏覽器就是不提醒直接下載