3

TR我在 HTML 中有以下内容,我使用 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();

但是即使我尝试将其隐藏然后显示它也不起作用,它始终不会受到影响..我尝试隐藏和显示TextBox1它并且它可以工作但是如果我尝试使用该行它不起作用...有没有显示/隐藏的方式TR

4

5 回答 5

1

如果我这样做 onload 它可以工作

$(document).ready(function(){
    $('#tempTR').hide();
});

也许您的问题出在其他地方?

于 2010-09-05T10:30:05.203 回答
1

我认为您与这篇文章中的问题相同JQuery .Show() does not work with server control?

于 2010-11-03T04:31:03.790 回答
0

在您的示例中,文本框之所以有效,是因为它是一个 asp 控件,而表格行不是因为它是一个 HTML 元素。

查看实际的 HTML 并确保在呈现的 HTML中$('#<%= tempTR.ClientID %>').hide();解析为。$('#tempTR').hide();

我有一段时间没有使用 ASP,但我相信它会被渲染为$('#tempTR.ClientID')不是 DOM 中的 ID。

于 2010-09-05T14:57:01.240 回答
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.
});
于 2010-09-05T15:39:53.160 回答
0

这不适用于 Jquery 或 javascript 中的表。您必须按类或其他 ID 引用表。使用元素 ID 不适用于表格。

于 2013-02-20T20:16:11.613 回答