Model view controller 在MVC中渲染局部视图而不刷新主视图

Model view controller 在MVC中渲染局部视图而不刷新主视图,model-view-controller,asp.net-ajax,partial-views,Model View Controller,Asp.net Ajax,Partial Views,我的主要观点如下 @model pjct.Models.Main_Model @using (Html.BeginForm("main_view", "pjct", FormMethod.Post)) { //main form details @Html.Partial("partial_view", @Model.partial_model) //main form details } 当窗体第一次呈现时,局部视图模型将为空。。 在主视图中有一个文本框。当它

我的主要观点如下

@model pjct.Models.Main_Model
 @using (Html.BeginForm("main_view", "pjct", FormMethod.Post)) 
  {
   //main form details

   @Html.Partial("partial_view", @Model.partial_model)
   //main form details


}
当窗体第一次呈现时,局部视图模型将为空。。 在主视图中有一个文本框。当它的值被更改时,将发生一个ajax调用,并为部分视图生成一个模型。我不知道如何在不刷新主视图的情况下将该模型传递给partial并进行渲染

@model pjct.Models.Main_Model
 @using (Html.BeginForm("main_view", "pjct", FormMethod.Post)) 
  {
   //main form details

   @Html.Partial("partial_view", @Model.partial_model)
   //main form details


}
创建局部模型的Ajax调用

@model pjct.Models.Main_Model
 @using (Html.BeginForm("main_view", "pjct", FormMethod.Post)) 
  {
   //main form details

   @Html.Partial("partial_view", @Model.partial_model)
   //main form details


}
 $("#services").on('change', '#code', function () {

                ($("#code").val() != '' && $("#code").val() != null);
                {
                    var code = $("#code").val();
                    $.ajax({
                        type: "GET",
                        url: '../main/get_price',
                        data: { c_code: code },
                        success: function (data) {
                            if (data) {

                            }
                        }
                    });
                }

            });


public ActionResult get_price(string c_code)
{

 //generate the model for partial view and need to call the same.
}

我怎么能达到同样的效果呢..我对这个部分模型还不熟悉,也没有什么想法。

你的
get\u price()
方法需要返回
partial\u视图。cshtml
partial(例如
return PartialView(“partial\u视图”,model);
然后在ajax成功回调中更新DOM-例如
$(someElement).html(数据)
@StephenMuecke
someElement
表示div或其他东西??是的,您可以在视图中添加一个
@Html.Partial(“Partial_view”,“Model.Partial_Model”)
,并使用
$(“#Partial”).Html(数据)
@StephenMuecke谢谢..让我试着回到u@StephenMuecke如何渲染局部视图,因为局部模型与主视图模型没有任何关系
@model pjct.Models.Main_Model
 @using (Html.BeginForm("main_view", "pjct", FormMethod.Post)) 
  {
   //main form details

   @Html.Partial("partial_view", @Model.partial_model)
   //main form details


}