追加装饰为html元素的内容并不起作用

时间:2015-12-22 18:20:18

标签: javascript jquery html css

我有一个div容器,仅在打印时可见。某些用户操作的div应注入一些内容,然后发送到打印。

@media print {
    html body * {
        display: none;
    }

    #toPrint{
        display: block;
    }
}

@media screen {
    #toPrint {
        display: none;
    }
}

在布局页面中我有以下结构

<html>
   <body>
      @RenderBody()
      <div id="toPrint"></div>
   </body>
</html>

和dom.ready下的内部视图页面我有脚本

var content = $("<table />").append(
     $("<tr />").append(
        $("<td />").append("TEST")
      ));
$("#toPrint").append(content);

附加此复杂元素&#39;不起作用,但使用以下代码

var content = "abc";
$("#toPrint").append(content);

我尝试用单引号装饰元素,尝试注入div而不是表格,没有任何助手,只使用没有装饰元素的普通字符串。

2 个答案:

答案 0 :(得分:0)

div id =&#34; toAppend&#34;你的代码?

您是否尝试过console.log(内容)?

答案 1 :(得分:0)

&#13;
&#13;
var content = $("<table />").append(
     $("<tr />").append(
        $("<td />").append("TEST")
      ));
$("#toPrint").append(content);
&#13;
@media print {
    html body * {
        display: none;
    }

    #toPrint{
        display: block;
    }
}

@media screen {
    #toPrint {
        display: none;
    }
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id='toPrint'>

</div>
&#13;
&#13;
&#13;

您发布的内容正如您希望的那样发挥作用,因此我认为任何人都无法根据可用信息为您提供帮助。我认为,无论你遇到什么问题,我都会简化问题。只需运行上面的代码片段即可看到TEST确实已隐藏。