1

我有这部分观点:

@foreach (var item in Model.listeStations){
   <tbody>
       <tr id="ligneRecherche">
           <td id="tdId">
               @Html.DisplayFor(modelItem => item.nom)
           </td>
           <td id="tdData">
               @Html.DisplayFor(modelItem =>item.adr)
           </td>
           <td id="tdLangue">
               @Html.DisplayFor(modelItem => item.cp)
           </td>
           <td id="tdType">
               @Html.DisplayFor(modelItem => item.ville)
           </td>
           <td id="selection">
               @Html.ActionLink("Choisir", "DetailsStation", new { id=item.id })
           </td>
       </tr> 
   </tbody>
}
</table>

如果一个用户在表格的某一行上单击任意位置,它就会执行 actionLink。可以在 JS 或其他中做到这一点吗?提前致谢 !

4

1 回答 1

1

添加class到您的tr标签以使用 jquery 选择它。

<tr id="ligneRecherche" class="row">

并使用 jquery 选择单击的行

$(".row").click(function(){
    var url = $('td a', this).attr('href');
    window.location = url;
});

而且您的视图应如下所示:(将tbody标签删除到 out of foreach

<tbody>
@foreach (var item in Model.listeStations){
   <tr id="ligneRecherche" class="row">
       <td id="tdId">
           @Html.DisplayFor(modelItem => item.nom)
       </td>
       <td id="tdData">
           @Html.DisplayFor(modelItem =>item.adr)
       </td>
       <td id="tdLangue">
           @Html.DisplayFor(modelItem => item.cp)
       </td>
       <td id="tdType">
           @Html.DisplayFor(modelItem => item.ville)
       </td>
       <td id="selection">
           @Html.ActionLink("Choisir", "DetailsStation", new { id=item.id })
       </td>
   </tr> 
}
</tbody>

还有一个信息:idoftrtd标签是没有意义的。因为它们是重复的元素。

于 2013-03-15T15:21:51.647 回答