我终于得到了我的asp.net网格来显示数据...... 但我需要它链接到一个动作时单击其中一行...或者如果需要,单个列如何在MVC3中获取我的一个列或行的路径?
我正在使用jqGrid btw ...
以下是我设置网格的方法
$("#list").jqGrid({
shrinkToFit: false,
autowidth: true,
datatype: 'jsonstring',
mtype: 'POST',
colNames: [
'MRN',
'Hospital Fin',
'First Name',
'Last Name',
'Date of birth',
'Completed Pathway',
'Completed Pathway Reason',
'PCP Appointment',
'Specialist Appointment',
'Admit Date'
],
colModel: [
{ name: 'MRN', width: 125, align: 'left' },
{ name: 'Hospital_Fin', width: 145, align: 'left' },
{ name: 'First_Name', width: 115, align: 'left' },
{ name: 'Last_Name', width: 115, align: 'left' },
{ name: 'Date_of_birth', width: 145, align: 'left' },
{ name: 'Completed_Pathway', width: 125, align: 'left' },
{ name: 'Completed_Pathway_Reason', width: 165, align: 'left' },
{ name: 'PCP_Appointment', width: 115, align: 'left' },
{ name: 'Specialist_Appointment', width: 125, align: 'left' },
{ name: 'Admit_Date', width: 185, align: 'left' }],
rowNum: 10,
rowList: [5, 10, 20, 50],
sortname: 'Id',
sortorder: "desc",
viewrecords: true,
imgpath: '/Content/themes/UPMC-theme/images',
caption: 'My first grid'
});
是否可以使整行可以单击某个操作方法? 要打开我的视图,我需要调用一个控制器和一个动作......
EditEncoutner是控制器,EditEncounter是Action ...
public ActionResult EditEncounter(int encounterId, int popId)
{
string UID = HttpContext.User.Identity.Name;
DataRepository dr = new DataRepository();
PatientACOModel patMod = dr.Get(encounterId, UID);
TempData["POPULATIONID"] = popId;
return View(patMod);
}
现在我自己编写JSON字符串...我想在相关列中添加<a />
标记。但这意味着我不会使整行可点击,然后我必须选择哪个列来放置链接...
我可以创建一个编辑专栏,如果所有其他方法都失败了,我会做的就是我希望有一个更优雅的解决方案。
答案 0 :(得分:1)
假设您的视图绑定到List
个Products
类对象
@model IEnumerable<Product>
<table>
@foreach(var product in Model)
{
<tr class="trClickable" data-viewurl="@Url.Action("View","Product",new {@id=product.ID})">
<td>
@product.Name
</td>
<td>
@product.Price
</td>
</tr>
}
</table>
我们将添加一些小的JavaScript来捕获click
的{{1}}事件。
row
假设您的<script type="text/javascript">
$(function () {
$(".trClickable").click(function () {
var item = $(this);
window.location.href = item.data("viewurl");
});
});
中有一个名为View
的操作方法,该方法接受名为ProductController
的参数并在其视图中显示一些数据