簡體   English   中英

jQuery隱藏iframe文件上傳

[英]jQuery hidden iframe File upload

我們正在嘗試使用隱藏的iframe上傳文件,並且腳本在除IE(9)之外的所有瀏覽器中運行。

  • 用戶點擊鏈接
  • 鏈接觸發文件輸入打開
  • 文件輸入更改觸發器表單提交
  • 表單提交iframe

IE9開發人員工具返回以下錯誤消息:

SCRIPT5: Access is denied.
jquery-latest.js, line 2977 character 6

環顧四周,它似乎是與jQuery change()事件一起發生的錯誤。 相當肯定它必須是一個簡單的解決方案...非常感謝你能夠提供幫助!

HTML

<form class="hidden" action="index.php?upload" method="POST" id="myForm" enctype="multipart/form-data" target="hidden_iframe">
    <input type="file" name="userfile" id="userFile">
    <input type="submit">
</form>

<iframe id="hidden_iframe" class="hidden" name="hidden_iframe" src="inc/temp.html"></iframe>

使用Javascript

$('#fake').on("click",function(e){
    e.preventDefault();
    $('#userFile').click();
    return false;
});
$('#real').on("change",function(e){
    e.preventDefault();
    $("#myForm").submit();
});

這是IE安全設置。 只需轉到“設置” - >“Internet選項” - >“安全性” - >“自定義級別”,然后將“其他”設置“跨域訪問數據源”下的安全設置更改為“啟用”。

編輯:

我剛剛看到了什么問題。 您正在觸發文件上傳,但您不允許這樣做。 您需要讓用戶手動單擊文件選擇器按鈕。

也許你應該考慮一個替代解決方案?

通過隱藏的iframe上傳不是現在最好的方法。

請看看這個很棒的lib: http//www.plupload.com/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM