我從視圖動態生成下表。我需要在class=heading
上添加點擊事件才能顯示或隱藏class=content
。jQuery slideToggle()不工作
<table>
<thead>
<tr>
<th class="thead">Function</th>
<th class="thead"">Type</th>
@foreach (var item in Model.PackageNames)
{
<th class="thead">
@item
</th>
}
</tr>
</thead>
<tbody>
@foreach (var item in Model.PrivilegeGroups)
{
<tr>
<td colspan="50">
<div class="heading">
@item.Name
</div>
</td>
</tr>
<text>
<p class="content">
@foreach (var privilege in item.Privileges.Values)
{
<tr>
<td>
@privilege.Name
</td>
<td>
@privilege.Type.ToString()
</td>
@foreach (var package in privilege.Packages)
{
<td>
@package.AccessLevel.ToString()
</td>
}
</tr>
}
</p>
</text>
}
</tbody>
</table>
這是我使用的jQuery,但它不起作用。
<script type="text/javascript">
$(document).ready(function() {
$(".heading").click(function() {
$(this).next(".content").slideToggle(500);
});
}); // -- End Ready
</script>
然而,$('.content').slideToggle();
做的工作,與切換所有class=content
元素。我只想隱藏下一個元素。我如何使它工作?
謝謝。
您的HTML格式不正確且無效。在'tbody'中,你只能有一個'tr',裏面有'th'或'td'。 – ahren 2012-08-13 21:39:10