代码之家  ›  专栏  ›  技术社区  ›  Micaiah Wallace

未触发更改时的jQuery文件输入

  •  2
  • Micaiah Wallace  · 技术社区  · 8 年前

    我绑定了两个单独的事件进行测试,但无论出于什么原因,当我选择一个文件时,它们都不会触发。我肯定我今天没有喝够咖啡,但这似乎是检测文件选择的正确方法。

    HTML:

    <input type="file" id="files">
    

    简体中文:

    $(document).on("ready", function() {
    
        $("#files").on("change", function() {
            alert("Files changed.");
        });
    
        $(document).on("change", "#files", function() {
            alert("Files changed.");
        });
    
    });
    

    例子: https://jsfiddle.net/snoapps/66y45hjh/

    2 回复  |  直到 8 年前
        1
  •  4
  •   user5037156 user5037156    8 年前

    https://jsfiddle.net/66y45hjh/2/

    你的第二个函数是正确的,但是函数的嵌套方式不会让它按照你想要的方式执行。看看我对你的小提琴所做的编辑。

    我使用的javascript代码如下。

    $(function() {
        $(document).on("change", "#files", function() {
            alert("Files changed.");
        });
    });
    
        2
  •  3
  •   Tewdyn    8 年前
    1. 它是 $('document').ready(function(){}); https://api.jquery.com/ready

    2. 你不需要第二个功能

    因此:

    $(document).ready(function() {
    
        $("#files").on("change", function() {
            alert("Files changed.");
        });
    
    
    });