代码之家  ›  专栏  ›  技术社区  ›  Karim

如何使用jquery获取文件输入字段的当前值

  •  20
  • Karim  · 技术社区  · 15 年前

    根据我已经准备好的,您应该能够使用文件输入字段的“value”属性来获取该字段的当前设置路径。但当我这样做的时候:

     $('#fileinput').value()
    

    我得到“未定义”。我确定字段的ID设置为“fileinput”。有人想知道为什么这对我不起作用吗?

    顺便说一下,这是可行的:

    var d = document.getElementById('AttachmentFile');
    alert(d.value);
    

    所以我想这和jquery的工作方式有关,我不完全理解。

    谢谢!

    8 回复  |  直到 12 年前
        1
  •  46
  •   Andreas Grech    15 年前

    您需要使用val而不是value。

    $("#fileinput").val();
    
        2
  •  21
  •   Thomas    14 年前

    在Chrome8中,路径总是“c:\fakepath\”和正确的文件名。

        3
  •  6
  •   CoaPsy    14 年前

    它不是.val()如果你想得到文件/home/user/default.png,它会得到.val()只是default.png

        4
  •  3
  •   Daniel A. White    15 年前

    我认为没有任何真正合法的方法可以通过DOM访问它。浏览器晚些时候会被锁定,以防止上传驱动,这将是一个安全风险。

        5
  •  2
  •   Dmitris    15 年前

    我想应该是

     $('#fileinput').val();
    
        6
  •  1
  •   sth    14 年前

    jquery在IE和其他浏览器中的工作方式不同。您可以使用

    alert($('input').attr('value'));
    

    在IE中,上面的警告将给出完整的路径,但在其他浏览器中,它只给出文件名。

        7
  •  0
  •   Collin White    14 年前

    你也可以吗

    $(input[type=file]).val()

        8
  •  0
  •   Devmaster78    12 年前

    我已经试过了,它很管用:

     yourelement.next().val();
    

    你可以是:

    $('#elementIdName').next().val();
    

    祝你好运!