1

在 html 页面中,我添加了一个输入元素。

<input type="file" name="fileselect" id="fselect"> </input>

当用户选择一个文件时,我想执行一个 javascript 函数。假设我也想写入控制台。

jquery select()检查用户是否选择了文件的正确功能是什么?我试过这样

$(document).ready(function(){
   $('#fselect').select(function(){ 
      console.log('selected');
      myfun(); 
    });
});

function myfun(){
   alert('you selected a file');
}

出于某种原因,当我使用输入元素选择文件时,没有任何内容写入控制台,也没有出现警告框。select()调用编码是否错误?

4

3 回答 3

3

您可以使用change事件:

​$("#fselect").change(function() {
    // do something
});​​​​​​​

演示:http: //jsfiddle.net/BtsHL/

于 2012-05-11T08:59:18.233 回答
2

您想要的事件是更改,而不是选择

文档

当用户在其中进行文本选择时,选择事件会发送到元素。

而对于改变

change 事件在元素值改变时发送到元素

于 2012-05-11T08:58:33.490 回答
1

试试这个:

$(document).ready(function(){
   $('#fselect').change(function(){ 
      console.log('selected');
    });
});
于 2012-05-11T08:59:45.203 回答