我有以下名为" _transactions":
的部分视图<div id="section-transactions" class="documentsanchor">
</div>
<div>
<div class="row">
<div class="col-lg-12">
<div>
<h4 class="company-headings">@ViewBag.SecSymbol Transactions</h4>
</div>
<div>
</div>
</div>
我使用
渲染它 @{Html.RenderAction("Transactions", "Company");}
这是公司控制器的交易方法:
public async Task<PartialViewResult> Transactions()
{
ViewBag.SecSymbol = "test";
return PartialView("_transactions");
}
它位于包含其他部分视图的页面上。
这很好用。但是,我在页面上有一个按钮,应该获得一个新的局部视图并替换当前的视图。它按如下方式进行ajax调用
$("#btn_transactions").click(function (e) {
var url = "Company/Transactions";
$.ajax({
url: url,
success: function (result) {
alert(result);
$('#transTarget').html(result);
},
error: function () {
alert("Error occured");
}
});
})
问题是整个页面都返回&#34;结果&#34;,即所有部分和布局,当我想要的只是事务部分。我做错了什么?
答案 0 :(得分:3)
在局部视图中添加此代码
@{
Layout=null;
}
答案 1 :(得分:0)
确保在配置中设置了路由-
routes.MapRoute("CompanyTransactions", "company/transactions", new { controller = "Company", action = "Transactions" });