2015-09-09 5 views
3

Как загрузить изображение в MVC Asp.net с использованием запроса Ajax У меня есть один контроллер, и его файл представления должен использовать запрос Ajax.Как загрузить изображение в MVC Asp.net с использованием запроса Ajax

Index Контроллер

public ActionResult Index() 
{ 
    return View(); 
} 

и его вид

ответ

9

Html код входного файла типа, поэтому мы будем называть тип входа из него идентификатор

<input type="file" id="imageUploadForm" name="image" multiple="multiple" /> 

функция Ajax

$(document).ready(function() { 
     $("#imageUploadForm").change(function() { 
     var formData = new FormData(); 
     var totalFiles = document.getElementById("imageUploadForm").files.length; 
     for (var i = 0; i < totalFiles; i++) { 
      var file = document.getElementById("imageUploadForm").files[i]; 
      formData.append("imageUploadForm", file); 
     } 
     $.ajax({ 
      type: "POST", 
      url: '/Home/Upload', 
      data: formData, 
      dataType: 'json', 
      contentType: false, 
      processData: false 
      //success: function(response) { 
      // alert('succes!!'); 
      //}, 
      //error: function(error) { 
      // alert("errror"); 
      //} 
     }).done(function() { 
      alert('success'); 
     }.fail(function(xhr, status, errorThrown) { 
      alert('fail'); 
      }; 
     }); 
     }); 

Контроллер Функция

[HttpPost] 
    public void Upload() 
    { 
     for (int i = 0; i < Request.Files.Count; i++) 
     { 
      var file = Request.Files[i]; 

      var fileName = Path.GetFileName(file.FileName); 

      var path = Path.Combine(Server.MapPath("~/App_Data/"), fileName); 
      file.SaveAs(path); 
     } 

    } 
Смежные вопросы