uploadify在fancybox内 - 不工作

时间:2011-02-25 14:13:15

标签: javascript fancybox uploadify

有没有人在fancybox中成功使用uploadify?如果我在普通页面上创建表单设置,uploadify可以很好地工作,但是如果我使用完全相同的代码并放入fancybox则不会。 uploadfield更改为uploadify,但在我的按钮上调用uploadifyUpload时,uploadify的js会出错。有关此的任何经验或想法吗?

2 个答案:

答案 0 :(得分:1)

我知道这真的很老了,但在我搜索后似乎没有一个好的答案,所以我想在这里添加一个:

解决方案是每次打开fancybox窗口时初始化uploadify,方法是在onStart()处理程序中执行。

如果已经初始化,则必须添加代码以重置uploadify(例如,之前已经打开过fancybox)。您可以通过在onStart()处理程序中添加代码并在初始化uploadify之前执行此操作,类似于:

$('#ID_FOR_FANCYBOX').fancybox({
  // other fancybox settings...
  'onStart': function() {

    // check if it has already been initialized
    if ($('#file_queue').hasClass("uploadifyQueue"))
    {
      // remove uploadify 
      $('#file_queue').removeClass('uploadifyQueue');
      $("#file_upload").unbind("uploadifySelect");
      swfobject.removeSWF('file_uploadUploader');

      // reset the html so we can initialize uploadify again
      $('#modal_upload .footer').html('<p><input type="file" id="file_upload" name="file_upload" /> or <a href="#" onclick="$.fancybox.close();return false;">cancel</a></p>');
    }

    // init uploadify here...

});

答案 1 :(得分:0)

很抱歉我迟到的回复,没有注意到你的评论 - 代码现在改为使用另一个jQuery上传脚本,一个来自lagoscript.org,我也修改了一下以更好地满足我的需求。这样我也可以避免使用Flash,这可能会成为我正在进行的项目中的一个问题。