Javascript Can';t更新元素的HTML

Javascript Can';t更新元素的HTML,javascript,jquery,Javascript,Jquery,我动态创建一个元素: $('.dataTables_paginate li.previous').after( '<li class="info" />' ); $('.dataTables_paginate li.previous')。之后('); 然后我尝试更新它的HTML: console.log(pre); // <b>1 - 20</b> of <b>1,447 entries</b> if ($('.dataTables

我动态创建一个元素:

$('.dataTables_paginate li.previous').after( '<li class="info" />' );
$('.dataTables_paginate li.previous')。之后('
  • );
  • 然后我尝试更新它的HTML:

    console.log(pre); // <b>1 - 20</b> of <b>1,447 entries</b>
    if ($('.dataTables_paginate li.info')) {
        console.log('element exists'); // element exists
        $('.dataTables_paginate li.info').html(pre);
    }
    
    console.log(pre);//1447项中的1-20项
    if($('.dataTables_paginate li.info')){
    console.log('element exists');//element exists
    $('.dataTables_paginate li.info').html(pre);
    }
    

    日志正确地打印了所有内容,但我不确定为什么元素的html没有更改,它保持为空(
  • )。我做错了什么?

    要检查元素是否存在,必须将其放在下面

    if($(elem).length){
      //some code
    }
    
    您的代码可以工作,但您可以这样说

    if($(elem).length){
      //some code
    }
    
    $(函数(){
    var pre=“1-1447条分录中的20条”;
    var$info=$(“
  • ”).html(pre); $('.dataTables_paginate li.previous')。在($info)之后; });
    
    

    Jquery文档说明.html(字符串s)以字符串作为参数

    将变量设置为字符串标记,如下所示:

    var pre = "<some html tag>"
    
    var pre=“”
    
    或将字符串标记作为参数传入:

    .html("<pre>")
    
    .html(“”)
    
    您的代码运行良好
    pre
    的内容是什么?是否
    显示xx中的xx
    ?@A.Lau更新了说明可能存在缓存问题?你试过在匿名模式下运行你的更新代码吗?我不知道为什么投票失败。。但无论如何。。这段代码没有问题。。你的问题可能在哪里else@2by2我也注意到这是每次插入,这就是为什么我使用HTML