2015-06-14 27 views
2

使用MVC/Json/Jquery。
使用表單創建一個新的「組」。
表單處於〜Group/Manage,張貼到〜Group/Create的表單 在處理此事時,返回的Json結果工作正常,在Jquery中處理,沒有URL重定向。
現在,每次運行它時,它都會重定向到〜Group/Create並顯示Json結果。
ASP.NET MVC jQuery JSON結果重定向URL

控制器組/創建

[HttpPost] 
    public ActionResult Create([Bind(Include="name,description")] GroupModel groupmodel) 
    { 
     ... 
     return Json(new { success = true, message = groupmodel.name }, JsonRequestBehavior.AllowGet); 
    } 

表格

<form id="frm_createGroup" action="/Groups/Create" method="post"> 
      <h2>Create Group</h2> 
      <div class="form-group"> 
       @Html.LabelFor(model => model.name, new { @for = "name" }) 
       @Html.TextBoxFor(model => model.name, new { @class = "form-control", @placeholder = "Group Name" }) 
       @Html.ValidationMessageFor(model => model.name) 
      </div> 
      <div class="form-group"> 
       @Html.LabelFor(model => model.description, new { @for = "description" }) 
       @Html.TextBoxFor(model => model.description, new { @class = "form-control", @placeholder = "Group Description" }) 
       @Html.ValidationMessageFor(model => model.description) 
      </div> 
      <span id="createGroupMessage"></span> 
      <button type="submit" class="btn btn-primary pull-right">Create</button> 

     </form> 

Jquery的處理形式

 $(document).ready(function(){ 
     $('#navGroups').makeActiveMenuItem(); 
     var options = { 
      success: groupCreateSubmitted 
      ,error: groupCreateError 
     } 
     $('#frm_createGroup').ajaxForm(options); 
    }); 

    function groupCreateSubmitted(responseText, statusText, xhr, $form) { 
     if (responseText.success) 
     { 
      $('#createGroupMessage').html = "Group Created"; 
     } 
     else 
     { 
      $('#createGroupMessage').html = responseText.message; 
     } 

    } 

要清楚,我不希望URL重定向,我只是想讓Jquery趕上回報(之前是這樣,不知道爲什麼它改變了......)

謝謝!

+0

顯然它做了一個正常的提交。你使用什麼插件,以及如果你在控制檯中遇到任何錯誤? –

+0

使用jquery表單插件(http://malsup.com/jquery/form/),看不到任何錯誤:(嗯,我看到它掛在外部腳本引用到表單插件,可能會嘗試並獲得本地副本並看看是否修復它 – michaelBurns

+0

根據[文檔](http://malsup.com/jquery/form/#api),_「。ajaxForm()準備通過AJAX提交的表單,通過添加所有的必須的事件監聽器,它不會提交表單「_。你有沒有在你的代碼中包含'ajaxSubmit()'? –

回答

0

去除 ,錯誤:groupCreateError

現在的工作......窗體綁定是失敗。