【发布时间】:2021-02-02 18:56:40
【问题描述】:
我遇到这种奇怪的情况,上传的图片文件只有在使用 Chrome 时才会消失。
事情是这样的:我点击Choose Files并上传图片
然后当我点击Choose Files然后我点击取消或关闭窗口时,最近上传的文件就消失了。
我用 Firefox 和 Safari 测试了同一个页面,效果很好,
【问题讨论】:
标签: asp.net asp.net-core file-upload asp.net-core-mvc
我遇到这种奇怪的情况,上传的图片文件只有在使用 Chrome 时才会消失。
事情是这样的:我点击Choose Files并上传图片
然后当我点击Choose Files然后我点击取消或关闭窗口时,最近上传的文件就消失了。
我用 Firefox 和 Safari 测试了同一个页面,效果很好,
【问题讨论】:
标签: asp.net asp.net-core file-upload asp.net-core-mvc
然后当我点击选择文件然后我点击取消或关闭 窗口,最近上传的文件消失。
这是默认情况下执行的操作。这一切都归功于 Chrome 浏览器的设计。
您可以添加以下js代码来改变它的设计,添加onclick和onchange事件到这个上传文件输入控件:
Upload Image:
<input id="imageUpload" type="file" onclick="fileClicked(event)" onchange="fileChanged(event)">
@section Scripts{
<script>
var clone = {};
function fileClicked(event) {
var fileElement = event.target;
if (fileElement.value != "") {
clone[fileElement.id] = $(fileElement).clone(); //'Saving Clone'
}
}
function fileChanged(event) {
var fileElement = event.target;
if (fileElement.value == "") {
clone[fileElement.id].insertBefore(fileElement); //'Restoring Clone'
$(fileElement).remove(); //'Removing Original'
}
}
</script>
}
这是 Chrome 中的测试:
【讨论】: