取消文件选择 window 后,如何在 html 文件类型元素中自动选择先前上传的文件?

How to autoselect previously uploaded file in html file type element when the file selection window is cancelled?

我有以下 html 和 javascript 代码。

function run() {
  alert(document.getElementById("file").value);
}
<input type="file" id="file" onchange="run()">

这里,当用户点击"browse"按钮并选择一个文件时,javascript提示用户选择的文件。问题是,当用户再次单击 "browse" 按钮但现在单击取消而不进行任何选择时选择文件后,javascript 代码没有任何提示。我的意思是,即使用户取消了 window,javascript 仍应提醒之前选择的文件。

而且我只在 chrome 上遇到这个问题,在 firefox 或 IE 上没有。代码非常基础,所以我猜代码不是问题。我认为这是一个跨浏览器问题。任何的想法 ?提前致谢。

您可以在 chrome 浏览器中使用以下代码。

var prev;
$("input[type=file]").bind("click", function() {
    prev=$(this).val();
});
$("input[type=file]").bind("change", function() {
    var selected_file_name = $(this).val();
    if ( selected_file_name.length > 0 ) {
        /* Some file selected */
      alert("Selected File Name : "+ selected_file_name);
      
    }
    else {
        /* No file selected or cancel/close
           dialog button clicked */
        /* If user has select a file before,
           when they submit, it will treated as
           no file selected */
      alert("Previously selected File Name : "+ prev);
    }
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<input type="file">