忍者ブログ

30Mar

[PR]

Posted by in

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

22Mar

ファイル入力フォームをクリアする

Posted by No Name Ninja in Javascript Sample

ファイルアップロードはjavascriptから改変できない。セキュリティ上、ファイル場所を予測してアップさせることができると大変なので。そのための対策がブラウザによって違ってて、一回の命令では消えてくれないです。

DEMO
window.onload = function(){
  document.forms['testForm'].elements['inputButton'].onclick = clearFile;
}

function clearFile(){
  var fileNode = document.getElementById('fileInput');
  //value=''では、I.E.でクリアできない。
  fileNode.value = '';

  //クローンを作って置換するとfirefoxがクリアできない。
  fileNode.parentNode.replaceChild(fileNode.cloneNode(false),fileNode);
}

コメントの通りですが、file要素のvalue値を空文字にしてもI.E9ではクリアできません。(chrome,firefox,safariは可能)。そのため、次の行でファイル要素のクローンを作って置換してます。ファイル要素のクローンによる置換は、firefox19では削除できません。なので、この2行で全ブラウザで削除できました。

PR

Comment


Vodafone絵文字 i-mode絵文字 Ezweb絵文字