我在HTML中使用以下TR
并使用JQuery
<tr class="RowDiv" id="tempTR" runat="server" visible="false"> <td>
<div class="LabelDiv">
<div class="dfltTxtBld">
ID<span class="reqChar" runat="server" id="Span1" visible="false">
*</span>
</div>
</div>
</td>
<td>
<div class="InputDiv">
<asp:TextBox ID="TextBox1" runat="server" CssClass="txtField" MaxLength="10"></asp:TextBox>
</div>
</td>
<td>
<div id="Div1" runat="server">
</div>
</td>
</tr>
在javascript代码中我调用了以下隐藏它的方法
$('#<%= tempTR.ClientID %>').hide();
但总是它不会影响,即使我试图让它隐藏,然后显示它也不起作用..我试图隐藏&amp;显示TextBox1
并且它可以正常工作,但如果我尝试使用该行则无效...有没有办法显示/隐藏TR
?
答案 0 :(得分:1)
如果我这样做onload就可以了
$(document).ready(function(){
$('#tempTR').hide();
});
也许你的问题出在其他地方?
答案 1 :(得分:1)
答案 2 :(得分:0)
在您的示例中,文本框有效,因为它是一个asp控件而表行没有,因为它是一个HTML元素。
查看实际的HTML并确保$('#<%= tempTR.ClientID %>').hide();
在呈现的HTML中解析为$('#tempTR').hide();
。
我暂时没有使用ASP,但我相信它会呈现为$('#tempTR.ClientID')
,而不是DOM中的ID。
答案 3 :(得分:0)
我更喜欢,因为您只是点击了要隐藏的TR中的元素,我将使用:
$('#other').click(function() {
$(this).closest("tr").hide();
});
有一些影响:
$('#other').click(function() {
$(this).closest("tr").fadeOut('slow');
});
记得将该代码放入onready函数
$(document).ready(function($) {
// Code using $ as usual goes here.
});
答案 4 :(得分:0)
这不适用于Jquery或javascript中的表。您必须按类或其他ID引用表。使用元素ID不适用于表。