2014-06-11 41 views
0

我有input[type=file],它上面有登錄表單。所以在用戶登錄後 - 立即打開文件上傳對話框。在Chrome中以編程方式打開上傳文件對話框

在我需要(FF,IE10 +),除了谷歌瀏覽器所有的瀏覽器,這個調用運行完美:

$('input[type=file]').click(); 

$('input[type=file]')[0].click(); 

$('input[type=file]').trigger('click'); 

這兒還有沒有人遇到了這個問題?如果是這樣,如何在Chrome上實現這一點?

編輯1: https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement.click這裏支持據說我可以在輸入[type = file]上使用它。 此外,此點擊正在工作,但只有當我實際點擊某個東西時,纔會點擊我的輸入(因此只有在物理點擊後)。

編輯2: 是的,我已經嘗試過搜索功能。但是我發現的一切都很古老,幾乎任何人都告訴過,即使FF也不支持這一點(現在不是這樣)。

EDIT3: 實例測試頁:http://jsfiddle.net/Ux3t4/

+1

它不會在Chrome中受支持。由於安全問題。在其他瀏覽器中的支持可能被稱爲bug,我不認爲任何解決方案都會跨瀏覽器。 – Jashwant

+1

FF v30.0無法正常工作。它如何爲你工作? –

+0

目前FF29,它不想更新,由於某種原因高達30 ... – Kamilius

回答

1

這不是由於安全原因不允許。順便說一句,即使在Internet Explorer中(對話框也會顯示,但是一旦你選擇了一個文件,這個文件就不會被提交)。

+0

也許它不允許只用於Chrome?因爲這對FF和IE來說都是完美的。試過了,我的所有文件都正確提交。 – Kamilius

+1

@Kamilius FF觸發彈出窗口阻止程序,您需要手動允許彈出窗口。 –

+1

@Kamilius據我記得你不能這樣做。我在Google上搜索了一個解決方案,並在那裏找到了一些有用的信息:http://stackoverflow.com/questions/4878164/input-file-click-chrome – SiZiOUS

相關問題