Плагин Jquery AjaxUpload не запускает событие onComplete - PullRequest
0 голосов
/ 18 августа 2011

Я использую Valums AjaxUpload для загрузки файла в моем приложении ASP.NET MVC 3.

new AjaxUpload($('input.partupload'), {
                autoSubmit: true,
                action: '/AdminPanel/Car/UploadPart',
                onSubmit: function (file, ext) {
                        if (!(ext && /^(zip)$/.test(ext.toLowerCase()))) 
                        {
                            $('#hinf').fadeIn('slow');
                            $('#hinf').html("Please, upload only Zip files!!");
                            return false;
                        } 
                    },
                data: { path: directoryPath,parentName : part, carId: @Model.carID, color: color },
                onComplete: function (file,response) {
                    var model = file.replace('.zip','');
                    if(response=="true")
                    {
                    alert(response);
                    createTree(part, model + '*' + part);
                    }
                    else
                    {
                    alert(response);
                    alert("Error during process");
                    }
                  }
            });

В моем контроллере у меня есть

 HttpPostedFileBase file = Request.Files[0];
            if (...)
{
    //Here my alert fires and onComplete is OK
    return Content("true");


}
else
{
               //FAIL!!! Nothing is happened in OnComplete!!!!!!
                return Content("false");
}

Итак, я не понимаю, чтоРазница в том, чтобы возвращать «истину» или «ложь» ... Почему я вижу результат в первый раз, а не вижу во второй ... Нужна ваша помощь))))

1 Ответ

0 голосов
/ 19 августа 2011

Да, я понял это ... Проблема в том, что в ajaxupload.js что-то не так со значением «false», поэтому нужно изменить «false» на другое значение !!!

Итак, все работает отлично !!!

 HttpPostedFileBase file = Request.Files[0];
            if (...)
{

    return Content("true");


}
else
{
     //WORKS!!!!
     return Content("error");
}
...