2012-05-14 51 views
0

我在我的網頁使用阿賈克斯形式多次,我在一個頁面夫婦AJAX形式 - (Customers.cshtml),另一個當屬局部視圖(_customers .cshtml)。當我提交部分視圖。這部分觀點正在提交多次**MVC3 Ajax表單提交

我使用下面的Ajax腳本主頁,也管窺


<script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.js")" 

我的代碼如下所示:

Customers.cshtml replaces the div tag with id="customers" 
--------------------------------------------------------------------- 

    <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/json2.js")" type="text/javascript"></script> 
    @if (false) 
    { <script src="~/Scripts/jquery-1.7.1-vsdoc.js" type="text/javascript"></script> } 
    <script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.js")" type="text/javascript"></script> 



    @using (Ajax.BeginForm("Action1", "Controller1", new AjaxOptions() { InsertionMode = InsertionMode.Replace, UpdateTargetId = "customers" })) 
    { 
         @Html.AntiForgeryToken() 
     <input type="submit" class="t-button t-state-default"/> 
    } 



    <div id="customers"> </div> 
    <div id="Orders"></div> 

    <div id="customers> tag is replaced with a partial view which has another AJAX FORM 




    **_customers.cshtml replaces the div tag with id="orders"** 
-------------------------------------------------------- 

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

    @using (Ajax.BeginForm("Action2", "Controller1", new AjaxOptions() { InsertionMode = InsertionMode.Replace, UpdateTargetId = "Orders" }, new { id = "formupdate" })) 
    { 
       @Html.AntiForgeryToken() 
    <input type="submit" class="t-button t-state-default"/> 

    } 


    Now when I try to submit the **_customers.cshtml** , it is submitting more than once 
<br/> 
      Controller 
      ----------------------------------------------- 
     [HttpPost] 
     public ActionResult Action1() 
       {   

        return PartialView("_customers"); 
       } 
     [HttpPost] 
     public ActionResult Action2() 
       {   

        return PartialView("_Shipping"); 
       } 
使用此庫:
+0

查看本帖的回答[1] [1]:http://stackoverflow.com/questions/4869583/asp-net-mvc-form-loaded-via-ajax-submits-multiple- times – kma1975

回答

-1
使用此庫: 10
+0

我是否還需要在部分視圖中添加庫? – Brad

+0

不,只將這些添加到_Layout頁面 – Nildarar

+0

不要使用Micorosft庫,它們已被棄用,並被替換爲使用JQuery native,甚至不包括在MVC 4中 –