我有这个asp和HTML代码:
<asp:Repeater ID="PervousResultsList" runat="server" EnableViewState="False">
<ItemTemplate>
<div class="row1">
<table style="cursor: pointer; width: 100%">
<tr>
<td rowspan="4">
<asp:Image ID="Image1" ImageUrl="~/Images/pushpinred.png" runat="server" Width="32"
Height="32" /></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td rowspan="7">
<input type="button" class="toggleRow" value="B" style="height: 30px; position: relative; float: left;" />
</td>
</tr>
<tr>
<td>text:</td>
<td rowspan="4">
<h1 style="color: gray"><%# Eval("Text") %></h1>
</td>
</tr>
<tr class="hidden">
<td>text:</td>
<td><%# Eval("Text") %></td>
</tr>
<tr class="hidden">
<td>X:</td>
<td><%# Eval("Lon") %></td>
</tr>
<tr class="hidden">
<td>Y:</td>
<td><%# Eval("Lat") %></td>
</tr>
<tr>
</table>
</div>
</ItemTemplate>
</asp:Repeater>
Javascript代码:
$('.toggleRow').on('click', function () {
$(this).closest('table').children('.hidden').show();
return false;
});
当使用类toggleRow的batten点击了javascript被触发但我没有得到任何结果(即我希望显示隐藏的行但不显示)。
知道为什么吗?
答案 0 :(得分:0)
由于您有table
和tr
,即使您没有创建tbody
,浏览器也会将所有tr
元素放入tbody
,因此,您的选择器$(this).closest('table').children('.hidden').show();
将无法找到tr
作为能力的子女。
所以试试
$(this).closest('table').find('tr.hidden').show();
您还必须将toggleRow
类添加到按钮
<input type="button" id="btnToggleRow" value="B" style="height: 30px; position: relative; float: left;" class="toggleRow"/>
答案 1 :(得分:0)
要在代码下方显示隐藏的行。
$('.toggleRow').on('click', function () {
$('.hidden').css("display","block");
return false;
});