BlueImp插件jQuery文件上传:如何使用fileInput选项,以便fileupload()可以绑定新动态添加的输入?
我使用BlueImp插件上传我的文件。 当用户点击“添加文件”时,用户动态添加新文件输入。
然后,当用户上传文件时,它通过AJAX存储在我的web文件夹中。
我的第一个想法是在生成的id上调用fileupload方法(例如: $('#files_0').fileupload( { //ajax processing } );
但是这个解决方案不起作用,因为加载页面时输入不存在。
所以我需要类似$('#files_0').live('click, function ({ fileupload( { //ajax processing } ) )};
但那也不行。
所以我检查了文档和论坛,发现这是一个使用fileInput
选项的解决方案。 所以我在这里做了什么,但那不起作用。任何帮助都会很棒!
$('#myDiv'). fileupload( { fileInput : $('#files_0), dataType: 'json', url:'{{ path('MyBundle_ajax_upload_picture') }}', progressall: function (e, data) { var progress = parseInt(data.loaded / data.total * 100, 10); $('#progress .bar').css( 'width', progress + '%' ); }, add: function (e, data) { $(this).fileupload('process', data).done(function () { data.submit(); }); }, done: function (e, data) { $.each(data.result.files, function (index, file) { $('').text(file.name).appendTo(document.body); }); }, always: function (e, data) { console.log(data); } });
试试这个:
$('#myDiv').on('change', '#files_0', function (e) { var $fileupload = $(this); $fileupload.fileupload({ url: {{ path('MyBundle_ajax_upload_picture') }}, dataType: 'json' }); $fileupload.fileupload('add', { fileInput: $(this) }); });
- Blueimp文件上传IE 8中没有发生任何事情
- jQuery文件上传(Blue imp)Symfony 2 405方法不允许
- blueimp jquery文件上传 – “完成”,“完成”回调不适用于IE 9
- 不调用Symfony 3.1和OneUpUploaderBundle + Blueimp = UploadListener
- 由blueimp进行jQuery-File-Upload – 附加标题
- Blueimp jQuery文件上传插件 – “空文件上传”结果PHP
- 为什么Blueimp的jQuery-File-Upload插件没有激活回调?
- 上次文件进度达到100%与停止/完成事件之间的差距很大?
- 在webpack中导入Blueimp jQuery文件上传