【问题标题】:How to append Nested Tables to a div?如何将嵌套表附加到 div?
【发布时间】:2013-07-12 13:45:26
【问题描述】:

我正在尝试这样。但这不适用于IE9。 我有一个包含三个或更多嵌套表的表都必须在 pageLoad 上设置style.display="none"。在按钮上单击 1 个嵌套表必须显示为块,主表为 appended to div

.aspx 页面

<div id="div1" > </div>

<table id="tab1">
    <table id="tab2"> </table>
    <table id="tab3"> </table>
    <table id="tab4"> </table>
</table>

.js 页面

onPageLoad(){
    document.getElementById("tab1").style.display = "none";
    document.getElementById("tab1").style.display = "none";
    document.getElementById("tab1").style.display = "none";
    document.getElementById("tab1").style.display = "none";
}


onbuttonclick(){
    mnuDiv = document.getElementById("div1");
    var subMnuTbl = document.getElementById("tab1");
    document.getElementById("tab3").style.display = "block";
    subMnuTbl.style.display="block";
    mnuDiv.appendChild(subMnuTbl);
}

高度赞赏的建议。

【问题讨论】:

  • 表格应该显示为table 而不是block。不确定这是否是解决方案,但仅供参考
  • @JaredMcAteer: 试过了...
  • onPageLoad函数中你真的设置了"tab1"的样式显示4次吗?另外,你在其他浏览器上试过吗?结果如何?
  • 什么是“不工作”?你能详细说明吗?无论如何,如果表格最初应该是不可见的,只需在样式表中给它们display:none。这样一来,页面加载时无需执行任何操作。
  • 另外,您的样本不完整 - 例如div1 不见了 - 所以我可能遗漏了一些重要的东西,但我不明白最后一行代码,mnuDiv.appendChild(subMnuTbl);。元素 subMnuTbl 已经存在于 DOM 树中,在 tab1 下,但你也想要它在 div1 下吗?

标签: javascript css internet-explorer-9


【解决方案1】:

您应该将所有 DOM 元素一次放入要附加的容器中,并根据您的要求设置Display:nonedisplay:block

【讨论】:

    猜你喜欢
    • 2015-03-18
    • 1970-01-01
    • 1970-01-01
    • 2017-05-09
    • 1970-01-01
    • 2018-03-31
    • 2015-09-28
    • 2017-11-17
    • 2020-06-01
    相关资源
    最近更新 更多