我希望在主视图中点击按钮后,将@Html.DisplayFor(modelItem => item.ProductCost)
的值从主视图传递到局部视图。
<table>
<tr>
<th>@Html.DisplayNameFor(m => m.ProductCost)</th>
</tr>
@foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.ProductCost)
</td>
<td>
<input class="search" type="button" value="Select"
data-assigned="@item.ProductCode" />
</td>
</tr>
}
</table>
<div id="MyReports"> </div>
和JavaScript代码:
$("document").ready(function () {
$('.search').click(function () {
var id = $(this).data('assigned');
var route = '@Url.Action("DisplayPartialView", "Pedigrees")?id=' + id;
$('#MyReports').load(route);
});
});
我想获得该特定ID的Productcost
。有人请指导我。
答案 0 :(得分:1)
您可以使用具有Mvc form
功能的ViewModel Ajax.BeginForm()
来提交您的数据(推荐但需要重构现有代码)。
或者您只需添加data
属性:
<input class="search" type="button" value="Select" data-assigned="@item.ProductCode" data-productcost="@item.ProductCost" />
传递GET参数,如assigned
值:
$('.search').click(function () {
var id = $(this).data('assigned');
var cost = $(this).data('productcost');
var route = '@Url.Action("DisplayPartialView", "Pedigrees")?id=' + id + '&cost=' + cost;
$('#MyReports').load(route);
});
不要忘记在cost
控制器功能中添加Pedigrees.DisplayPartialView(int id, string cost)
参数。