2011-09-19 5 views
1

을 사용하여 index.cshtml에 MVC3 면도날이 있습니다. 작동하지만, AjaxHelper을 사용하여 Ajax 형식으로 바꾸고 싶습니다 (참고 : Ajax/jQuery에 익숙하지 않습니다). 그것은 실패합니다. 내 질문 :MVC3 (면도기) 양식을 Ajax 양식으로 변환

  1. 내 코드가 잘못되었습니다.
  2. 이러한 종류의 변형을 설명하는 좋은 웹 사이트가 있습니까?
  3. 뷰를 Ajax 처리로 변환하는 경우 컨트롤러를 변경해야합니까?

여기 내 index.cshtml 파일입니다. Ajax를 사용한 나의 평가판은 MVC3 형식 아래 주석 처리되었다.

<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/jquery-1.5.1.js")" type="text/javascript"></script> 

@using (Html.BeginForm("UploadFile", "Home", FormMethod.Post, new 
{ 
    enctype = "multipart/form-data" 
})) 
{ 
    @Html.ValidationSummary(true) 
    <fieldset> 
     <legend>Select a file</legend> 
     <input type="file" id="fileupload" name="fileuploadname" /> 
     <p> 
      <input type="submit" value="Upload" id="upload" onclick="javascript:document.getElementById('upload').disabled=true; document.getElementById('upload').value='Uploading...'" /> 
     </p> 
    </fieldset> 
} 

@* @using (Ajax.BeginForm("UploadFile", "Home", 
       new AjaxOptions 
       { 
        InsertionMode = InsertionMode.Replace, 
        HttpMethod = "POST" 
       })) 
{ 
    <input type="file" id="fileupload" name="fileuploadname" /> 
    <p> 
     <input type="submit" value="Upload" id="upload" onclick="javascript:document.getElementById('upload').disabled=true; document.getElementById('upload').value='Uploading...'" /> 
    </p> 
} 
*@ 

Thx.

답변

1

Ajax를 사용하여 파일을 업로드 할 수 없습니다. 적어도 직접적으로.

물론 few plugins이 도움이되지만 AjaxHelper 범위 외부의 qork입니다. 이것은 단지 당신이 을 가지고 있어야한다는 것을 의미합니다. 좋은 일인 jQuery으로 손을 더럽힐 수 있습니다. 간단하고 작은 라이브러리이고 익숙해지면 AjaxHelper에서 벗어나서 jQuery (HtmlHelper)를 사용하는 것이 가장 쉽습니다.

+0

답변 및 링크 용 Thx. – MagB

관련 문제