FileUpload コントロールを使用して、画像を参照して選択するときに (アップロードを押さずに) 画像を同時に表示する方法:
長い間これを探していました。もう一度試すことができます。
Js 部分:
<script type="text/javascript"> function ShowImg(obj) { var AllowExt = ".jpg|.gif|.bmp|.png|"; var FileExt = obj.value.substr(obj.value.lastIndexOf(".")).toLowerCase(); if (AllowExt != 0 && AllowExt.indexOf(FileExt + "|") == -1) //判断文件类型是否允许上传 { alert("您上传的不是图片!"); } else { var newPreview = document.getElementById("PreviewImg2"); newPreview.src = obj.value; } } </script>
Body 部分:
<img id="PreviewImg2" alt="" src="" width="140px" height="115px" /> <asp:FileUpload ID="FileUpload1" runat="server" onchange="ShowImg(this)" />
この方法は私が個人的にテストしたものなので、お役に立てれば幸いです。うまくいった場合は、「いいね!」することを忘れないでください。 ! !
コードは次のとおりです:
<script>$(function() { $("#Book_Fiel").change(function() {var $file = $(this);var fileObj = $file[0];var windowURL = window.URL || window.webkitURL;var dataURL;var $img = $("#Book_Picture");if (fileObj && fileObj.files && fileObj.files[0]) { dataURL = windowURL.createObjectURL(fileObj.files[0]); $img.attr('src', dataURL); } else { dataURL = $file.val();var imgObj = document.getElementById("preview");// 两个坑:// 1、在设置filter属性时,元素必须已经存在在DOM树中,动态创建的Node,也需要在设置属性前加入到DOM中,先设置属性在加入,无效;// 2、src属性需要像下面的方式添加,上面的两种方式添加,无效;imgObj.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)"; imgObj.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = dataURL; } }); } ); </script>
以上がファイルコントロールの選択例のチュートリアルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。