jQuery Blueimp 文件上传未触发



我在我的应用程序中使用了jquery blueimp文件上传。我已将该函数添加到$(function().

$( function() {
    $("#files').fileupload({
    url: "uploadhandler.php", 
    dataType: 'text',
    autoUpload: false,
    singleFileUploads: false,
    replaceFileInput: false,
    add: function (e, data) { 
      alert("inside add");
    }
}).prop('disabled', !$.support.fileInput)
    .parent().addClass($.support.fileInput ? undefined : 'disabled');   
});
</script>

页面加载时,文件输入字段不可用。因此,不会触发fileupload事件。我正在通过 ajax 调用加载文件输入字段和其他相关的 html 内容。

<span class="btn btn-success fileinput-button w3-margin-bottom  ">
    <i class="glyphicon glyphicon-plus"></i>
    <span>Attach</span>
    <input id="files" name="files" type="file" style="cursor: pointer;">
</span>

如何触发文件上传事件?谁能帮我解决这个问题?

提前谢谢。

不会触发动态字段上的事件,因为您是在字段可用之前注册事件。

此问题的解决方案是从页面加载时可用的父元素委派事件。例如文档或正文(或加载页面时确定存在的任何元素(。

所以基本上你的代码:

$("#files').fileupload(//do something)

将更改为:

$('body').on('fileupload', '#files', function() {
    // do something
});

最新更新