註冊
登錄
論壇
熱門
搜索
會員
幫助
導航
私人消息 (0)
公共消息 (0)
系統消息 (0)
好友消息 (0)
帖子消息 (0)
jsGears.com 技術論壇 - AJAX, JavaScript, jQuery, 網站開發, 前端效能優化
»
JavaScript 討論
» Jquery傳送檔案問題
返回列表
發帖
wmh
發短消息
加為好友
wmh
當前離線
UID
2
帖子
763
精華
2
積分
232
閱讀權限
200
來自
Taipei
在線時間
842 小時
註冊時間
2007-7-14
最後登錄
2020-9-29
管理員
帖子
763
主題
210
精華
2
積分
232
威望
232
金錢
0
1
#
跳轉到
»
發表於 2010-2-9 22:06
|
顯示全部帖子
回復
1#
domino
表單上傳是一定要用 post 沒錯。
你是要用 JavaScript 做非同步上傳的效果嗎?一般來說流程是這樣的:
在頁面上做一個隱藏的 iframe
把上傳檔案表單的 target 指到這個 iframe
user 選取檔案上傳後,就會透過這個 iframe 進行 post 上傳檔案
檔案上傳完成後,頁面刷新,驅動頁面上的 onload
再呼叫原頁面上的 JavaScript 進行後續動作
過程還蠻複雜的,如果你不熟悉整個流程的話,建議用 jQuery 現有的 plugin 即可。
To infinity and beyond!
TOP
wmh
發短消息
加為好友
wmh
當前離線
UID
2
帖子
763
精華
2
積分
232
閱讀權限
200
來自
Taipei
在線時間
842 小時
註冊時間
2007-7-14
最後登錄
2020-9-29
管理員
帖子
763
主題
210
精華
2
積分
232
威望
232
金錢
0
2
#
發表於 2010-2-9 23:45
|
顯示全部帖子
1. 和安全性無關喔,用 GET 沒辦法上傳檔案
2. 我用過
jQuery Form
,使用上相當簡單。你也可以參考
這一篇
介紹的三種上傳程式。
To infinity and beyond!
TOP
wmh
發短消息
加為好友
wmh
當前離線
UID
2
帖子
763
精華
2
積分
232
閱讀權限
200
來自
Taipei
在線時間
842 小時
註冊時間
2007-7-14
最後登錄
2020-9-29
管理員
帖子
763
主題
210
精華
2
積分
232
威望
232
金錢
0
3
#
發表於 2010-2-10 01:06
|
顯示全部帖子
檔案上傳的動作一般是由瀏覽器在處理的,先讀取檔案,編碼後再傳輸。
如果你要透過 JavaScript 做這件事,會有很多問題要處理,你得讓 JavaScript 能讀取你 local 端的檔案,得自己做編碼,等等...
透過 iframe 的話,這些事還是由瀏覽器負責,表單還是一樣,只是 target 不同而已。
To infinity and beyond!
TOP
wmh
發短消息
加為好友
wmh
當前離線
UID
2
帖子
763
精華
2
積分
232
閱讀權限
200
來自
Taipei
在線時間
842 小時
註冊時間
2007-7-14
最後登錄
2020-9-29
管理員
帖子
763
主題
210
精華
2
積分
232
威望
232
金錢
0
4
#
發表於 2010-2-10 01:35
|
顯示全部帖子
你可以參考 ajaxSubmit 這一段:
http://www.malsup.com/jquery/form/#ajaxSubmit
$('#form1').ajaxSubmit();
To infinity and beyond!
TOP
wmh
發短消息
加為好友
wmh
當前離線
UID
2
帖子
763
精華
2
積分
232
閱讀權限
200
來自
Taipei
在線時間
842 小時
註冊時間
2007-7-14
最後登錄
2020-9-29
管理員
帖子
763
主題
210
精華
2
積分
232
威望
232
金錢
0
5
#
發表於 2010-2-10 08:54
|
顯示全部帖子
如果你新增的都是檔案上傳的欄位,那麼可能要連同表單都是新建的喔
To infinity and beyond!
TOP
wmh
發短消息
加為好友
wmh
當前離線
UID
2
帖子
763
精華
2
積分
232
閱讀權限
200
來自
Taipei
在線時間
842 小時
註冊時間
2007-7-14
最後登錄
2020-9-29
管理員
帖子
763
主題
210
精華
2
積分
232
威望
232
金錢
0
6
#
發表於 2010-2-10 19:49
|
顯示全部帖子
要選取特定欄位 post 是可以,但是如果有檔案則不行,跟之前一樣的問題。
所以如果是要單獨上傳一個檔案,則要新增一個表單,裡面就一個檔案上傳的欄位,這樣才行。
To infinity and beyond!
TOP
返回列表
回復
發帖
閒聊、灌水、測試、廣告
HTML5 Mobile App 開發
JavaScript 應用、資源、新聞
工作相關
電腦書、電子書
電腦網路技術
JavaScript 教學、心得分享
[收藏此主題]
[關注此主題的新回復]
[通過 QQ、MSN 分享給朋友]