在由ajax加载按钮后初始化时,Valums qq.FileUploader不起作用

时间:2011-09-29 05:21:22

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

我使用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());
                    }

                     }); 
            }); 
        });

我怎样才能让它发挥作用?

1 个答案:

答案 0 :(得分:0)

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

$("#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');
  });
});