style
1.input { 2 display: none; 3 width: 256px; 4 height: 256px; 5} 6 7#clear { 8 display: none; 9}
js
1<script src="http://code.jquery.com/jquery-3.2.1.min.js"></script> 2<script> 3$(function(){ 4 $('#upfile_01').change(function(e){ 5 //ファイルオブジェクトを取得する 6 var file = e.target.files[0]; 7 var reader = new FileReader(); 8 9 //画像でない場合は処理終了 10 if(file.type.indexOf("image") < 0){ 11 alert("画像ファイルを指定してください。"); 12 $("#upfile_01").val(''); //選択したファイルをクリア 13 return false; 14 } 15 16 //アップロードした画像を設定する 17 reader.onload = (function(file){ 18 return function(e){ 19 $("#img_file_01").attr("src", e.target.result); 20 $("#img_file_01").attr("title", file.name); 21 }; 22 })(file); 23 reader.readAsDataURL(file); 24 25 }); 26}); 27 28//クリア 29$(function() { 30 // アップロードするファイルを選択 31 $('input[type=file]').change(function() { 32 $('#clear').show(); 33 }); 34 35 // ファイル参照をクリア 36 $('#clear').click(function() { 37 $("#upfile_01").val(''); //選択したファイルをクリア 38 $(this).hide(); 39 }); 40}); 41 42</script>
html
1<img id="img_file_01" style="width:320px;height:240px;" /><br> 2<input type="file" name="img_file_01" id="upfile_01" class="input"> 3<input type="button" id="clear" value="クリア">
タイトル通りですが、選択したファイルのクリアまではできましたが
プレビュー画像のクリアの仕方が調べてもうまくいきませんでした。
参考までにお力添えをいただけませんでしょうか。
あなたの回答
tips
プレビュー