投稿

2018の投稿を表示しています

IEにおけるinput type=file エレメントのコピー時の注意点

イメージ
clone()メソッド エレメントのコピーにはclone()メソッドを使用します。 html <input type="file" class=" ImageFileInput "> javascript var real = $(".ImageFileInput"); var cloned = real.clone(true);cloned.insertAfter(real); IEではfileの中身がコピーされない input type=file の場合、エレメントそものはclone()でコピーされますが、 inputに添付したファイルの値はIEではコピーされません(IE11で確認)。 console.log(cloned.val()) ; //IEだと""(カラ),肝心の中身がない! console.log(cloned.[0].files[0].name) ; //IEでも引き継がれている console.log(cloned.[0].files[0].size) ; //IEでも引き継がれている 回避策:値だけ直接コピーする cloned.val( real.val() ) ;