2013-09-01 54 views
0

下面是一個簡單的腳本上傳圖片在一次點擊。一旦用戶瀏覽並選取圖片,它就會立即上傳。圖片上傳在一鍵點擊 - Onchange沒有被觸發

由於某些原因,該腳本一直運行良好,直到最近,現在一旦用戶選擇圖像,什麼都不會發生。

<div class="upload_button"> 
    <form action="upload.php" id="upload_icon" method="POST" enctype="multipart/form- 
     data"> 
     <input class="upload" id="file" type="file" name="image" style="display:none" 
     /> 
     <img class="upload_img" src="images/icon.png"> 
    </form> 
</div> 


<script type="text/javascript"> 
    $('.upload_img').click(function() { 
     $(this).parent().find('.upload').click(); 
    }); 

    document.getElementById("file").onchange = function() { 
     document.getElementById("upload_button").submit(); 
    } 
</script> 

這個問題與.onchange有什麼關係?

+3

這個環節應該清除您:http://stackoverflow.com/questions/10952804/onchange-event-doesnt-trigger – user2550807

回答

0

感謝@ user2550807的評論,我能夠解決我的問題。

我將一個addEventListener應用於DOM對象。

因此,我改變:

document.getElementById("file").onchange = function() { 
document.getElementById("upload_button").submit(); 
} 

到:

document.getElementById("file").addEventListener("change", function() { 
document.getElementById("upload_button").submit(); 
});