【问题标题】:Valums qq.FileUploader doesn't work when it's initialized after loading button by ajaxValums qq.FileUploader在ajax加载按钮后初始化时不起作用
【发布时间】:2011-09-29 05:21:21
【问题描述】:

我使用 Valums qq.FileUploader(ex-AjaxUpload) 插件在我的 Asp.net mvc 3 应用程序中上传...

我的页面add-newimage 中有一些按钮,通过单击它会得到模态窗口,然后通过加载部分视图将数据加载到该窗口中。

在那个部分视图中我有按钮 upload-image ,我想在其中初始化我的 qq.FileUploader,但它在任何地方都不起作用......

这是代码

      $("#add-newimage").click(function () {
            $("#add-image").load('/Design/AddImage/', function () {
                $("#add-image").dialog('open');

                     var uploader= new qq.FileUploader({
                    element: document.getElementById("upload-image"),
                    action: '/Design/UploadImage',
                    allowedExtensions: ['jpg'],
                    onComplete: function (id, fileName, responseJSON) {
                        $("#hidden-path input").html("/Img/Temp/@User.Identity.Name/" + file);
                        alert($("#hidden-path input").html());
                    }

                     }); 
            }); 
        });

我怎样才能让它工作?

【问题讨论】:

  • 你弄明白了吗?我有同样的问题
  • 是的,但我不记得我是如何解决这个问题的。

标签: javascript jquery asp.net-mvc-3 ajax-upload


【解决方案1】:

我会尝试将上传代码放在对话框的打开事件中。

$("#add-image").dialog({
  open : function(event, ui) {
      var uploader= new qq.FileUploader({
        element: document.getElementById("upload-image"),
        action: '/Design/UploadImage',
        allowedExtensions: ['jpg'],
        onComplete: function (id, fileName, responseJSON) {
          $("#hidden-path input").html("/Img/Temp/@User.Identity.Name/" + file);
            alert($("#hidden-path input").html());
          }
  }
});

..

$("#add-newimage").click(function () {
  $("#add-image").load('/Design/AddImage/', function () {
    $("#add-image").dialog('open');
  });
});

【讨论】:

  • 您的控制台中是否出现任何 javascript 错误? (例如萤火虫 / chrome 控制台)
猜你喜欢
  • 2012-02-04
  • 1970-01-01
  • 2015-07-19
  • 1970-01-01
  • 2017-12-15
  • 1970-01-01
  • 2020-01-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多