我有html:
<form id="fileuploadform">
<input type="file" id="fileupload" name="fileupload" />
</form>
和jquery:
$(':file').change(function(){
var file = this.files[0];
...
});
问题是:仅当文件选择与先前所做的选择不同时,才会触发更改功能。这当然是“改变”事件的意义。 我希望在文件对话框关闭的情况下调用我的函数,无论如何。
我尝试使用'select'事件 - 它永远不会被称为
我也尝试过:
$(':file').bind('dialogclose', function(event) {
alert('closed');
});
和
$(':file').live("dialogclose", function(){
alert('closed1');
});
他们也没有工作。
答案 0 :(得分:4)
尝试使用此代码。
$('#fileupload').on('change', function () {
alert('Hi');
//do your function.
});
此功能只会调用您选择的其他文件,否则不会。
答案 1 :(得分:4)
我知道这是一个旧帖子,但尝试使用'输入'而不是'更改'。为我工作。 :)
$('#fileupload').on('input', function () {
alert('Hi');
});
答案 2 :(得分:1)
当我使用jQuery动态附加HTML时,我遇到了同样的问题。
我建议您使用以下解决方案
$(document).on('input','#fileupload', function () {
console.log('Your Code')
});