You can use the change event, it will not fire if the same file is selected, but if you also clear the click event, it should work.
see this jsfiddle
$(function(){ $('body').append('jq works <br />'); $("#xxx").submit(function () { $('body').append('go >> <br />'); }); $("#yyy").change(function(){ alert("changed"); }).click(function(){ $(this).val("") }); });
red-x source share