如何检查是否使用javascript选择了文件?

noo*_*oob 6 javascript php file

在PHP中,这是检查文件是否被选中的方式:

$_FILES['item']['size']>0
Run Code Online (Sandbox Code Playgroud)

用JavaScript怎么样?

我需要知道,因为我有一个仅在选择文件时才有效的功能.

Vol*_*erK 19

http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-49531485说:

DOMString
类型的值当元素的type属性具有值"text"," file "或"password"时,它表示交互式用户代理中相应表单控件的当前内容.

<html>
  <head><title>...</title>
    <script type="text/javascript">
      function foo() {
        var f = document.getElementById("f1");
        alert( ""==f.value ? "nothing selected" : "file selected");
      }
    </script>
  </head>
  <body>
    <form>
      <div>
        <input id ="f1" type="file" name="x" />
      </div>
    </form>
    <button onclick="foo()">click</button>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)


Tan*_*ger 7

我用这个javascript:

var file_selected = false;
function showNoFile() {
    if(!file_selected) { alert('No file selected!'); } // or anything else
}
Run Code Online (Sandbox Code Playgroud)

用这个html作为文件按钮:

<input type='file' onchange="file_selected = true;" ...>
....
<input type='submit' onclick='showNoFile();'>
Run Code Online (Sandbox Code Playgroud)

希望有所帮助!