【发布时间】:2014-05-29 07:18:53
【问题描述】:
我正在为我的 Web 应用程序项目使用 MVC 5。我创建了一个由 MVC 本身完成的表的内置列表。现在我想获取我点击的数据的 id。 MVC 本身创建了一个编辑/删除选项,但我想让整行成为可点击的,这样当我按下其中一行时,我会将我链接到该 ID 的详细信息。 问题是当我单击该行时,我根本无法将 id 传递给 javascript。我试图搜索它,我发现了类似这样的东西 var id = $('.clickableRow').attr("data-id"); 但它只显示未定义的值。
这里是我的 index.cshtml 源代码
@foreach (var item in Model){
<tr id="clickableRow(this)">
<td>
@Html.DisplayFor(modelItem => item.SentBy)
</td>
<td>
@Html.DisplayFor(modelItem => item.SentTo)
</td>
<td>
@Html.DisplayFor(modelItem => item.Subject)
</td>
<td>
@Html.DisplayFor(modelItem => item.SentDate)
</td>
<td>
@Html.DisplayFor(modelItem => item.Message)
</td>
<td>
@Html.ActionLink("Details", "Details", new { id = item.MailId }) |
@Html.ActionLink("Delete", "Delete", new { id = item.MailId })
</td>
</tr>
}
这里是我尝试使用的javascript:
<script type="text/javascript">
$(document).ready(function () {
$('.clickableRow').on('click', function (e) {
var id = $(this).closest('tr').find('td.SentBy').html();
//var id = $('.clickableRow').attr("data-id");
alert(id);
//window.location = "Mails/Details/" + id;
// Or, we can grab the HREF from the first anchor:
//window.location = $('a:first', this).attr('href');
});
});
提前感谢您的帮助。
【问题讨论】:
-
发布你生成的html
标签: javascript jquery twitter-bootstrap asp.net-mvc-5