首页
/
每日頭條
/
科技
/
表單上傳文件如何不跳轉
表單上傳文件如何不跳轉
更新时间:2025-12-08 21:33:25

上傳文件的時候,在IE7下總是傳不了,但FireFox,IE11和Chrome下則可以上傳。發現是form.submit();時出錯了(“拒絕訪問”)。

html代碼為:

<label onclick="Upload()"> 上傳附件</label> <form id="uploadForm" enctype="multipart/form-data" target="framefile" method="post"> <input type="file" id="a" name="a" onchange="fileUpload()" style="display:none" /> </form>

js代碼為

function Upload() { document.getElementById("a").click(); } function fileUpload() { var form = document.getElementById('uploadForm'); form.action="XXX.do?"; form.submit(); }

原來是因為IE下 file表單控件,不能用js控制打開文件選擇器(就是隻能點擊file本身,不能通過js調用file.click方式),否則會報 “拒絕訪問”。所以,通過将file設置為透明(position:absolute;top:0px;right:0px;cursor:pointer; opacity:0;filter:alpha(opacity:0);z-index:999;),用div或者其他的标簽蓋住file,這樣點擊顯示的div時同樣也真實的點擊了file。

代碼做一下調整,這個問題就能解決了

<label for="a"> 上傳附件 </label> <form id="uploadForm" enctype="multipart/form-data" target="frameFile" method="post"> <input type="file" id="a" name="a" onchange="fileUpload()" style="position:absolute;top:0px;right:0px;cursor:pointer; opacity:0;filter:alpha(opacity:0);z-index:999;"/> </form>

function fileUpload() { var form = document.getElementById('uploadForm'); form.action="XXX.do?"; form.submit(); }

表單上傳文件如何不跳轉(上傳文件時用form.submit提交的時候在IE中報拒絕訪問的錯誤)1

表單上傳文件如何不跳轉(上傳文件時用form.submit提交的時候在IE中報拒絕訪問的錯誤)2

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
電腦顯示未正确啟動怎麼做
電腦顯示未正确啟動怎麼做
1、首先,可能就是我們的操作失誤把系統文件整沒了,此時必須要進行本地還原,其原理也相當于手機的恢複出...
2025-12-08
微信不小心按了不顯示該聊天怎麼恢複
微信不小心按了不顯示該聊天怎麼恢複
1、我們要恢複的話,需要通過搜索按鈕,搜索對方的微信名字進入到聊天記錄裡面。2、然後我們主動給對方發...
2025-12-08
現在學什麼專業和技術前景好 2023吃香的專業
現在學什麼專業和技術前景好 2023吃香的專業
2023吃香前景好的專業有:軟件工程專業、電氣工程及其自動化專業、财務管理專業、計算機科學與技術專業、土木工程專業、法學專業、工商管理專業、英語專業等,都是學完畢業後很有發展的專業,值得各位考生報考。2023學什麼專業前景最好1、熱度最高的是軟件工程專業,選擇這門專業的畢業生就業率很高,之所以熱門,...
2025-12-08
筆記本外接顯示器分辨率怎麼設置
筆記本外接顯示器分辨率怎麼設置
演示機型:華為MateBookX系統版本:win71、用鼠标右鍵,點擊顯示器(外接)桌面的空白之處。2、在彈出的選項上,選擇屏幕分辨率,點擊進入。3、進入到更改顯示器的外觀界面後,點擊分辨率選項上的小三角。4、通過上下滑動調整,使外接的顯示器分辨率大小合适即可,然後點擊确定。5、确定後選擇保留更改,點擊還原,會還原更改以前的分辨率。6、多顯示器設置為隻在2上顯示桌面,就是在外接的顯示器上顯示桌面,
2025-12-08
車載凱立德如何使用
車載凱立德如何使用
1、直接設置目的地來導航,查找目的地在凱立德導航界面上點擊查找,進入查找操作界面,在查找操作界面的右...
2025-12-08
Copyright 2023-2025 - www.tftnews.com All Rights Reserved