Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery打开文件搜索窗口_Jquery_Html - Fatal编程技术网

Jquery打开文件搜索窗口

Jquery打开文件搜索窗口,jquery,html,Jquery,Html,我创建了一个简单的按钮: <button id="mybutton">Search</button> 搜索 单击此按钮时,我需要打开“搜索文件”窗口。我需要输入类型文件的行为 我不想使用输入类型文件:) 有什么想法吗?谢谢 代码中不需要输入文件,还是不需要输入文件样式?在第二种情况下,您可以执行以下操作: $('#inputfile').hide(); $('#mybutton').click(function() { $('#inputfile').click(

我创建了一个简单的按钮:

<button id="mybutton">Search</button>
搜索
单击此按钮时,我需要打开“搜索文件”窗口。我需要输入类型文件的行为

我不想使用输入类型文件:)

有什么想法吗?谢谢

代码中不需要输入文件,还是不需要输入文件样式?在第二种情况下,您可以执行以下操作:

$('#inputfile').hide();
$('#mybutton').click(function() {
  $('#inputfile').click();
});
看看这个jsfiddle。 您可以隐藏该字段,并将按钮单击绑定到输入单击


您可以在页面顶部“隐藏”一个输入文件,并按如下按钮调用:

<input type="file" name="file" id="file" style="position: absolute; top: -1000px;" />
当文件被选中时,您可以使用

$('#file').change(function() {
    // Code here
});

您可以触发单击,然后监听
#文件的更改:

$(function(){
    $('#mybutton').on('click', function(){
       $("#file").trigger('click'); 
    });
    $("#file").on('change', function(){
       console.log(this.value);
    });
});
此.value
为文件路径/文件


检查此项

为什么不使用
这是CSS问题吗?不想使用文件输入或不想看到它?您自己是否尝试过?您可以使用CSS隐藏实际的文件输入,并使用一些技巧创建您自己的文件上载。我只想打开搜索文件浏览器,选择一个文件,当我单击“确定”时,检索该文件并执行一些操作。@ClémentAndraud:除非您在表单中发布该文件,否则您将无法访问该文件或对其执行任何操作。(或使用flash)哼,当我选择一个文件时有没有办法检索“OK”事件?当我选择一个文件时有没有办法检索“OK”或“Open”事件?我想通过调用
$(“#idofinputfield”).change(function(){…})到目前为止的最佳答案,但仍然无法处理该文件。另外,该路径不是真正的路径,并且仍然不能确定它是否适用于所有浏览器either@musefan您将永远无法获得真正的路径值。这是出于安全考虑。此外,您不能自己对文件执行任何操作,因为它位于不同的域(文件://)。事实上,某些浏览器在使用
display:none
进行文件输入时出现问题,您应该使用
position:absolute;顶部:-100px@musefan-我同意,这是迄今为止最好的答案。我看不到他好转。@JamieDePalmenaer-谢谢,我不知道,我也是来学习的,对吗?
$('#file').change(function() {
    // Code here
});
$(function(){
    $('#mybutton').on('click', function(){
       $("#file").trigger('click'); 
    });
    $("#file").on('change', function(){
       console.log(this.value);
    });
});