我的blueimp jQuery文件上传脚本无效的任何想法?

时间:2011-09-22 11:00:10

标签: javascript jquery file-upload

我正在使用blueimp JQuery文件上传脚本来浏览文件的上传。您可以在此处下载:https://github.com/blueimp/jQuery-File-Upload/zipball/master(ZIP)。

以下是JavaScript代码的片段:

$(function () {
    'use strict';

    // Initialize the jQuery File Upload widget:
    $('#fileupload').fileupload({
    // Dirs
    url: 'accesspoint/upload.php',
    uploadDir: 'accesspoint/files/',
    thumbnailsDir: '',

    // Options
    autoUpload: 1,
    maxNumberOfFiles: 1,
    limitConcurrentUploads: 1,
    maxFileSize: 1000000,
    });

    // Load existing files:
    $.getJSON($('#fileupload form').prop('action'), function (files) {
        var fu = $('#fileupload').data('fileupload');
        fu._adjustMaxNumberOfFiles(-files.length);
        fu._renderDownload(files)
            .appendTo($('#fileupload .files'))
            .fadeIn(function () {
                // Fix for IE7 and lower:
                $(this).show();
            });
    });

    // Open download dialogs via iframes,
    // to prevent aborting current uploads:
    $('#fileupload .files a:not([target^=_blank])').live('click', function (e) {
        e.preventDefault();
        $('<iframe style="display:none;"></iframe>')
            .prop('src', this.href)
            .appendTo('body');
    });
});

现在看一下http://www.mcemperor.nl/test/appstest/blueimpjqueryfileupload/example/。我们可以上传文件,它可以工作。 现在,如果我上传的文件大于上面JavaScript代码段中定义的最大文件大小,那么您将看到类似这样的内容。 File upload like it's supposed to.

完美,按预期工作。 (请注意,我已将最大上传大小设置为1000000字节,因此如果您上传a file of 1 MB,则说明该文件太大。)

但是......现在当我将相同的脚本(带有一些小的修改)作为模块粘贴到某种框架中时,脚本将无法正常工作;我明白了: File upload that is not the idea...

正如您所看到的,“删除条目”图标较小(它应该是正方形),点击它时没有任何反应。

我不知道可能这个问题。有没有人有想法

  • 可以在另一个<form>内使用此脚本吗?
  • 具有相同ID的多个元素可以成为问题吗?
  • javascripts之间的冲突(例如重新定义函数或对象)是否会成为问题?

1 个答案:

答案 0 :(得分:1)

我不确定如何修复脚本,但是可能的解决方法是使用FireBug定位元素并使用css条目或jquery函数对其进行修补。另外,您可以查看jquery.fileupload-ui.css,它是负责覆盖控件的jqueryUI元素的css文件。我知道按钮是独立的样式。同样,我不确定,但可能会通过脚本添加一个类来更改删除按钮上的图标。