2012-03-31 4 views
2

페이지에서 부분 뷰를 렌더링하기 위해 Ajax Form을 사용하고 있습니다.
제가 4 JS 포함 이것으로 MVC - Ajax.BeginForm이 작동하지 않습니다.

<script type="text/javascript" src="<%: Url.Content("~/Scripts/jquery-1.7.1.min.js") %>"></script> 

<script type="text/javascript" src="<%: Url.Content("~/Scripts/jquery.unobtrusive-ajax.js") %>"></script> 
<script type="text/javascript" src="<%: Url.Content("~/Scripts/MicrosoftAjax.js") %>"></script> 
<script type="text/javascript" src="<%: Url.Content("~/Scripts/MicrosoftMvcAjax.js") %>"></script> 

<form id="aspnetForm" runat="server" style="height: 100%;"> 
<% using (Ajax.BeginForm("demo", "demo", new AjaxOptions { HttpMethod = "Post", UpdateTargetId = "divToUpdate" }, new { @ID = "AjaxForm" })) 
        { %> 

        <%= Html.DropDownList("Demo", list, new { @id = "id", @class = "dropdown" })%> 
        <% }%> 
        <input type="submit" value="Save" /> 
        <div id="divToUpdate"> 
         <% Html.RenderPartial("UserControls/DemoPage"); %> 
        </div> 

       <% }%></form> 

코드

아래 참조. Form 태그가있는 페이지가 있으며 그 안에는 prtial view 페이지가 있습니다. 드롭 다운 목록을 선택하고 저장 버튼을 클릭하면 아약스 게시물을 원하지만 전체 페이지가 다시로드되는 것으로 나타났습니다.

어떤 아이디어가 있습니까? 당신은 또한에 드롭 다운 변경 될 수

<% using (Ajax.BeginForm("demo", "demo", new AjaxOptions { HttpMethod = "Post", UpdateTargetId = "divToUpdate" }, new { @ID = "AjaxForm" })) 
{ %> 
    <%= Html.DropDownList("Demo", list, new { @id = "id", @class = "dropdown" })%> 
    <input type="submit" value="Save" /> 
<% }%> 
<div id="divToUpdate"> 
    <% Html.RenderPartial("UserControls/DemoPage"); %> 
</div> 

답변

4

문제가

감사합니다, HTML

다음과 같이 시도에서

  1. 당신은 중첩 할 수 없습니다 양식 태그, 자동 다시 게시, 별도의 제출 버튼이 필요하지 않습니다.

    <%= Html.DropDownList("Demo", list, new { @id = "id", @class = "dropdown", @onchange = "$(this).closest('form').submit();" })%> 
    
+0

감사합니다 .. – Gate

관련 문제