Carregar arquivos usando o campo input type = “file” com o evento .change () nem sempre disparando no IE e no Chrome [duplicado]
Esta questão já tem uma resposta aqui:
jQuery change method na entrada type = “file” 3 respostasEu tenho um pedaço simples de código para fazer upload de arquivos:
<code>$(document).ready(function () { $(".attachmentsUpload input.file").change(function () { $('form').submit(); }); }); <form class="attachmentsUpload" action="/UploadHandler.ashx" method="post" enctype="multipart/form-data"> <input type="file" class="file" name="file" /> </form> </code>
Enquanto clico na entrada e, em seguida, seleciono um arquivo na caixa de diálogo, estou enviando esse arquivo usando ajax. Isso não é parte importante aqui. A parte importante é que, embora eu selecione o mesmo arquivo na segunda vez na caixa de diálogo, logo após o envio do primeiro arquivo, o evento .change () não é disparado no IE e no Chrome. Mas enquanto eu escolho um arquivo diferente, o evento é acionado e funciona corretamente. Sob o Firefox está disparando o tempo todo.
Como contornar isso, para funcionar como esperado (como no Firefox)?