在Ajax发布后通过jQuery刷新PartialView

在Ajax发布后通过jQuery刷新PartialView,jquery,asp.net-mvc,asp.net-ajax,Jquery,Asp.net Mvc,Asp.net Ajax,有没有人有特别的技巧来遵循jQuery表单ajax post到控制器方法,强制刷新同一页面上的PartialView?这是否涉及带回部分HTML并添加附件,或者我可以简单地以某种方式使PartialView神奇地刷新 提前谢谢。 道格 这是我的RenderPartial和下面的表单…想从下面的ajax调用中刷新RenderPartial <% Html.RenderPartial("p_Offers", Model.Offers); %> <h2>Make an

有没有人有特别的技巧来遵循jQuery表单ajax post到控制器方法,强制刷新同一页面上的PartialView?这是否涉及带回部分HTML并添加附件,或者我可以简单地以某种方式使PartialView神奇地刷新

提前谢谢。 道格

这是我的RenderPartial和下面的表单…想从下面的ajax调用中刷新RenderPartial

    <% Html.RenderPartial("p_Offers", Model.Offers); %>

<h2>Make an Offer</h2>
<form id="makeOffer" action="/post/makeoffer/<%=Model.Id %>" method="post">
    <div class="grid_2 alpha"><label>Comment</label></div>
    <div class="grid_6 omega"><%= Html.TextBox("Comment")%></div>

    <div class="grid_2 alpha"><label>Payment Terms</label></div>
    <div class="grid_6 omega"><%= Html.TextArea("PaymentTerms")%></div>

    <div class="grid_2 alpha"><label>Amount</label></div>
    <div class="grid_6 omega"><%= Html.TextBox("Amount")%></div>

    <div class="prefix_2">
        <label>Tentative <input type="radio" checked="checked" name="Confirmed" value="Tentative" /></label>
        <label>Confirmed <input type="radio" name="Confirmed" value="Confirmed" /></label>
    </div>

    <div class="prefix_2">
        <input type="submit" value="Make Offer" />
    </div>
</form>

如果将局部视图包装在div中并返回局部视图标记 您只需使用.post回调来替换/追加新标记

注意:以下内容替换了整个部分标记。如果需要的话,可以很容易地将其更改为使用.append()

$.post(action,
       serializedform,
       function(html) {
          $('#viewWrapperDiv').html( html ); 
          //$('#viewWrapperDiv').append( html ); 
       }
);
$.post(action,
       serializedform,
       function(html) {
          $('#viewWrapperDiv').html( html ); 
          //$('#viewWrapperDiv').append( html ); 
       }
);