Javascript - 元素的 CSS 样式在附加时不显示

标签 javascript php css

我在 javascript 中遇到有关将值附加到元素的 innerHTML(特别是 div 元素)的问题。问题是,每次我将值附加到元素的 innerHTML 时,附加值的 CSS 样式都不会显示。例如,当我运行这个脚本时:

    <script>
        var content=<?php

        echo json_encode("
        <table>
            <tr>
                <td>HELLO</td>
            </tr>
        ");

        ?>;

        document.getElementById("div").innerHTML=content;
    </script>

    //followed by this script which appends values
    //the script below does not show CSS style

    <script>
        var content=<?php

        echo json_encode("
            <tr>
                <td>HI</td>
            </tr>
            </table>
        ");

        ?>;

        document.getElementById("div").innerHTML+=content;
    </script>

我添加了这张图片以进一步阐述我在说什么。 img

上图中使用的CSS样式:

    table
    {
        border-collapse:collapse;
        width:100%;
    }

    th
    {
        background-color:#8a855f;
        padding:3px;
        text-transform:uppercase;
        text-align:center;
        border:1px solid #686440;
        color:#edebdc;
    }

    td
    {
        background-color:#d1cebd;
        padding:3px;
        text-align:center;
        border:1px solid #686440;
        color:#686440;
    }

最佳答案

因为是自动取收尾</table>标签。查看控制台并检查元素,您会发现问题。

我建议您首先将所有值附加到 var content 中然后将该值设置为 div 的 innerHTML。

<script>
    var content=<?php

    echo json_encode("
    <table>
        <tr>
            <td>HELLO</td>
        </tr>
    ");

    ?>;


</script>

//followed by this script which appends values
//the script below does not show CSS style

<script>
    content +=<?php

    echo json_encode("
        <tr>
            <td>HI</td>
        </tr>
        </table>
    ");

    ?>;

    document.getElementById("div").innerHTML=content;
</script>

关于Javascript - 元素的 CSS 样式在附加时不显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22555726/

相关文章:

php - WordPress 隐藏 CSS 元素

css - div定位中的div问题

javascript - 无法访问bind-unsafe-html的ng-model变量的值

javascript - AngularJS 使用 NG-IF 检查模块是否存在

javascript - 参数对象正在将我的数组转换为列表? javascript

javascript - 单击相关视频时为 YouTube JS Player API 添加事件回调

php - PostgreSQL:在分页输出中使用 row_number()

php - MySQL 管理目录 View

javascript - 防止 &lt;textarea&gt; 失去焦点以保持移动键盘

html - 如何创建电子邮件邮寄列表