2013/12/09

[jQuery]input type="file"のvalの書き換えができない

どうやらonchangeのときにinput type="file"のvalueの書き換えはできないようだ。

<script>
  $('#hoge').on('change',function(e){
    e.preventDefault();
    $('#hoge').val('');
  });
</script>
<input type="file" value="" id="hoge">
上のプログラムがNGなんだけど、valueを書き換えたい場合、replaceWithを使ってdomそのものを差し替えればいいようだ。
<script>
  $('#bar').on('change',function(e){
    e.preventDefault();
    $(this).replaceWith('<input type="file" value="" id="bar" />');
 });

</script>
<input type="file" value="" id="bar">
これ結構、使えると思う。

参考URL
Upload files using input type=“file” field with .change() event not always firing in IE and Chrome

0 コメント:

コメントを投稿