当用户处于“创建”视图中时,我需要向他们显示一些以前记录的数据以进行比较。使用ViewBag将以前数据的ID传递到视图中。我需要一个按钮或一个ActionLink,用户可以单击该按钮打开一个模态对话框,该对话框将显示以前的数据。我已经设置了一个部分视图,它接受一个int ID并返回一个模型,但是我无法成功传递ID,最多只能使用模型中的字段打开对话框,但没有数据,其他尝试甚至没有让模态打开。使用ViewBag.PrimaryGradingID中存储的参数在模式对话框中获取详细信息视图的最佳方法是什么?
在控制器中:
public ActionResult Details(int id)
{
Grading grading = db.Gradings.Find(id);
if (grading == null)
{
return HttpNotFound();
}
return PartialView(grading);
}
详细信息部分视图:
@model Models.Grading
@{
Layout = null;
}
<div class="primary" title="Primary Grading">
<dl class="dl-horizontal">
<dt>
@Html.DisplayNameFor(model => model.L_COL_Available)
</dt>
<dd>
@Html.DisplayFor(model => model.L_COL_Available)
</dd>
...
</dl>
</div>
<style>
#primary { display: none; }
*</style>
<script type="text/javascript">
$(function () {
dialog = $("#primary").dialog({
autoOpen: false,
height: 400,
width: 400,
resizable: false,
modal: true,
buttons: {
Cancel: function () {
dialog.dialog("close");
}
},
close: function () {
}
});
});
$('#detailsButton').button().on("click", function (event) {
dialog.dialog("open");
});
</script>*
在父视图中:
<input type="button" class="btn btn-primary" id="detailsButton" value="View primary grading data" />