2

我正在使用 plupload 队列将图像上传到我们的服务器。我将 browse_button 的值设置为超链接的 id,因此它显示了一个浏览对话框。但是当我单击该超链接时,什么都没有显示,浏览器视图只是转到页面的中间。下面是部分代码。

(顺便说一句,我正在使用 jQuery UI 的对话框来弹出图像上传 div:)

<div id="dialog-form" title="Upload Images">        
    <div id="container" style="height: 200px;"></div>
    <br style="clear: both" />
    <a id="pickfiles" href="#">[Select files]</a>
</div>

<script type="text/javascript">
$(document).ready(function () {
$("#container").pluploadQueue({
       // General settings
       runtimes: 'gears,flash,silverlight,browserplus,html5',
       browse_button: 'pickfiles',
       url: '/someurl/image-upload',
       max_file_size: '10mb',
       chunk_size: '1mb',
       unique_names: true,


       // Resize images on clientside if we can
       resize: { width: 320, height: 240, quality: 90 },

       // Specify what files to browse for
       filters: [
                { title: "Image files", extensions: "jpg,gif,png,tiff,jpeg" }
                ],

                // Flash settings
                flash_swf_url: '/someurl/js/plupload.flash.swf',

            // Silverlight settings
            silverlight_xap_url: '/someurl/js/plupload.silverlight.xap'
        });

        //setup upload image dialog box
        $("#dialog-form").dialog({
            autoOpen: false,
            height: 400,
            width: 400,
            modal: true
        });
});

谁能告诉我为什么会发生这种情况而不是打开“浏览框”?谢谢。

4

1 回答 1

0

plupload 队列小部件不会接受您的browse_button参数,因为它在实例化队列小部件时已经处理了设置的选项后在内部设置了自己的参数。

鉴于运行时还使用 init 事件来附加它们需要工作的内容,一旦在browse_button队列小部件上被覆盖,它就会使用该参数集直接进入选定的运行时,并且如果您想捕获 init 事件 if 只会毕竟这一切都已经发生了,为时已晚。

话虽如此,除了自己修改队列小部件之外,您无能为力。

于 2012-08-20T15:09:31.763 回答