改变身体内部HTML的正确方法

时间:2015-12-10 10:41:09

标签: javascript jquery html dom jscript

我正在做一些jQuery的东西。在文件的最后我改变了body innerHTML,如下所示:

document.getElementsByTagName('body')[0].innerHTML='<div>some string</div><div>some string</div><div>some string</div>'+document.getElementsByTagName('body')[0].innerHTML;

执行此操作后,元素将添加到body中,但jquery或javascript函数都不起作用。你知道为什么以及如何解决它吗?

注意:如果&#34;有可能&#34;我更喜欢用上面的方法

向主体添加元素

这是我在改变innerHTML后在此代码中进行的测试(这是datatables.net)$('#search').keyup赢了工作......

   <script type='text/javascript'>
        //<![CDATA[
        $(window).load(function() {
            $(document).ready(function() {

                oTable = $('#example').DataTable({
                    "iDisplayLength": 10,
                    "aaSorting": [
                        [1, 'asc']
                    ],

                    responsive: true
                });
                $('#search').keyup(function() {
                    oTable.search($(this).val()).draw();

                })

            });
        }); //]]>
    </script>
编辑:问题解决了!

2 个答案:

答案 0 :(得分:0)

使用动态添加的对象,您无法完成以下任务:

$("#object").click(function(){

});

但相反,您需要使用:

$(document).on("click", "#object", function(){

});

这样,您就可以触发动态添加的对象。

答案 1 :(得分:0)

我最后做了两处修改来完成这项工作: 1将所有脚本放在文件末尾附近 2更改body innerHTML后执行所有准备代码。