0

我很难用 javascript/jQuery 隐藏一个 html 表。我已经尝试了以下两种方法:

document.getElementById('tblQuickTools').style.display = 'none';
$('#tblQuickTools').hide();

我已经逐步检查了代码以确保线路被击中。该表的 HTML 如下所示。

<table cellpadding="0" cellspacing="0" width="38%" id="tblQuickTools">
    <tr>
        <td class="outerTableTopLeftSmall">
        </td>
        <td colspan="4" class="outerTableTopRepeatSmall">
        </td>
        <td class="outerTableTopRightSmall">
        </td>
        <td class="outerTableTopLeftSmall">
        </td>
        <td colspan="2" class="outerTableTopRepeatSmall">
        </td>
        <td class="outerTableTopRightSmall">
        </td>
    </tr>
    <tr>
        <td class="outerTableLeftRepeatSmall">
        </td>
        <td colspan="4">
            <img src="identity.gif" border="0" />
            <strong><big>Quick Tools</big> </strong>
        </td>
        <td class="outerTableRightRepeatSmall">
        </td>
    </tr>
    <tr>
        <td class="outerTableLeftRepeatSmall">
        </td>
        <td colspan="4">
            <strong>
                <hr />
            </strong>
        </td>
        <td class="outerTableRightRepeatSmall">
        </td>
    </tr>
    <tr>
        <td class="outerTableLeftRepeatSmall">
        </td>
        <td>
            <a id="btnDownloadAll" onclick="LaunchSignOffMultiDownloader(this);this.blur();return false;"
                href="javascript:void(0);" class="btnMed"><span>Download All</span> </a>
        </td>
        <td>
            &nbsp;
        </td>
        <td>
            <a id="btnReplaceAll" onclick="LaunchSignOffMultiUploader(this, true);this.blur();return false;"
                href="javascript:void(0);" class="btnMed"><span>Replace All</span> </a>
        </td>
        <td>
            <a id="btnRetainAll" onclick="RetainAllSignOffDocuments();this.blur();return false;"
                href="javascript:void(0);" class="btnMed"><span>Retain All</span> </a>
        </td>
        <td class="outerTableRightRepeatSmall">
        </td>
    </tr>
    <tr>
        <td class="outerTableBotLeftSmall">
        </td>
        <td colspan="4" class="outerTableBotRepeatSmall">
        </td>
        <td class="outerTableBotRightSmall">
        </td>
    </tr>
</table>

我检查并加载了 tblQuickTools。所以这不是加载问题。我可以尝试使用 $(document).ready() 但我对此感到担忧。tblQuickTools 位于位于母版页中的 aspx 页面内的选项卡内。单击时通过 AJAX 加载选项卡。隐藏代码在 tabLoaded() 函数中运行。如果我使用 $(document).ready() 我不确定它会触发哪个文档,选项卡、页面或母版页。

4

2 回答 2

9

如果您试图在显示页面后立即隐藏此表,它可能还不存在。如果是这种情况,请尝试以下操作:

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

它将$('#tblQuickTools').hide();在页面完全呈现后启动。

于 2013-06-10T14:44:11.487 回答
1

您可以使用 JavaScript 隐藏它(在文档加载后,如所指出的那样),但最好将其设置为隐藏:

<head>
<style>

  #tblQuickTools { display:none }

</style>
</head>

这将消除 JS 版本可能出现的任何闪烁。

于 2013-06-10T15:09:41.240 回答