2014-12-04 28 views
0

我在編程上對輸入類型='文件'進行單擊,並在輸入值更改時提交文件。它工作正常在FF/Chrome瀏覽器(最新版本),但不是在IE瀏覽器,當點擊輸入瀏覽按鈕用另一個按鈕單擊事件編程方式當以編程方式在文件輸入上單擊時,IE更改事件不會觸發

<input id='fileupload' type='file' visibility='hidden'> 
<button id='TriggerUpload'> 
<script> 
    $("#fileupload").change(function() { alert('Value Changed'); }); 
    $("#TriggerUpload").click(function() { $("#fileupload").click(); }); 
<script> 

更改事件不會在IE瀏覽器被觸發,但是做工不錯,當直接點擊輸入瀏覽按鈕(如果可見)!

我嘗試使用onpropertychange,如http://jsfiddle.net/7wR2L/14/中所述,但它不能解決IE11中的問題!

任何建議和/或解決方案真的很感激。

回答

0

確實是一個非常令人沮喪的問題 - 我認爲它是IE中的一個bug。試試這個工作,基本上強制關注你的按鈕:

$("#TriggerUpload").click(function() { 
    $(this).focus(); 
    $("#fileupload").click(); 
}); 
0

你是否觸發了正確的事件?您已訂閱change,但正在觸發click。相反:

$("#fileupload").change(function() { alert('Value Changed'); }); 
$("#TriggerUpload").click(function() { $("#fileupload").trigger('change'); }); 

http://jsfiddle.net/drzaus/7wR2L/1350/(我居然無法在IE中測試這個...)

相關問題