2017-04-19 92 views
0

在我看来,我的渲染局部视图登记表:返回两个局部视图一个从控制器

<div class="col-md-8 regform"> 
      @Html.Partial("_RegistrationForm",Model) 
     </div> 

现在,当用户提交我使用AJAX调用控制器的形式。控制器检查模式是否没有错误。如果有错误控制器返回带有注册模型的部分视图。但是如果没有错误,那么控制器返回不同的局部视图。下面是我的电话AJX:

$("#registrationform").submit(function (e) { 
       $.ajax({ 
        type: "POST", 
        url: '/Members/Register/', 
        data: $("#registrationform").serialize(), 
        success: function (data) { 
         $('.regform').html(data); 
        } 
       }); 

       e.preventDefault(); // avoid to execute the actual submit of the form. 
      }); 

控制器

if (!ModelState.IsValid) 
      { 
       model.CountryList = ISOCountryHelper.Instance.getAllCountries(); 
       model.StateList = new List<SelectListItem>(); 
       model.CityList = new List<SelectListItem>(); 
       return PartialView("_RegistrationForm",model); 
      } 

      //do other stuff 
      model.UserCreated = true; 
      return PartialView("_Notifications", model); 

现在的问题是当存在模型误差,那么该观点做工精细显示错误和登记表。但是,如果现在有错误和控制器返回_Notification局部视图,那么div标记regform不会被替换为“_Notification”局部视图。相反,部分视图出现在新页面中。我希望它在div标签regform中的同一页中呈现。 任何想法我在这里做错了。

感谢

回答

0

检查不工作不具有布局属性设置在它的顶部,为局部视图将呈现为一个完整的,不是局部视图。你可以比较一个工作

相关问题