16Nov
[PR]
×
[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行で全ブラウザで削除できました。