Вызовите jquery скрипт после завершения загрузки файла asp.net mvc 2

Я пытаюсь отобразить всплывающее окно jquery после действия загрузки файла? не знаете, как закодировать это?

 <%= Html.BeginForm("Upload","Home",FormMethod.Post,new { enctype = "multipart/form-data" }) %>
<%{ %>


<input type="file" id="upload" name="upload" />

<button id="btnUpload">
    upload</button>



<%} %>

 <script type="text/javascript">

    function SayFinished() {
        alert('Finished');
    }
 </script>

[HttpPost]
    public ActionResult Upload()
    {
        HttpPostedFileBase selectedFile = Request.Files["upload"];

        if (selectedFile.ContentLength > 0 )
        {
            //do some processing call jquery script to open popup: SayFinished()
        }

        return View("Index");
    }

2 ответа

Решение

Самый простой способ сделать это - вернуть представление из вашего контроллера после публикации, содержащей скрипт onload.

В новом представлении поместите следующий javascript:

В контроллере установите следующее после загрузки файла

ViewData["FileUploaded"] = "true";

Тогда в наборе

<% if (!String.IsnullOrEmpty(ViewData["FileUploaded"]) && ViewData["FileUploaded"] == "true") { %>
     <script type="text/javascript">
        $(document).ready(function() {
            SayFinished();
        });

        function SayFinished() {
            alert('Finished');
        }
     </script>
<%} %>

Вы можете использовать эти плагины для загрузки файла с помощью jQuery, http://pixelcone.com/jquery/ajax-file-upload-script/

Извините за предыдущий отзыв с неверной информацией.

Другие вопросы по тегам