代码之家  ›  专栏  ›  技术社区  ›  Batman

jQuery忽略调用html()时创建的初始html元素

  •  1
  • Batman  · 技术社区  · 7 年前

    $("<tr>",{class: "ertert"}).append($("<td>",{text:"adfsadfasdf"})).html()
    
    // "<td>adfsadfasdf</td>"
    

    <tr> ?

    2 回复  |  直到 7 年前
        1
  •  0
  •   Kike Sanchez    7 年前

    请尝试以下代码: HTML格式:

    <table class="parent"></table>
    

    JS公司:

    $('.parent').html('<tr class="name"><td>anything</td></tr>');
    

    $('.parent').append('<tr class="name"><td>anything</td></tr>');
    
        2
  •  0
  •   Aditya Sharma    7 年前

    当用链子锁住它的时候 html() <tr> . 您尚未分配 <tr> 也没有将其添加到DOM中,因此无法再访问它。你在局部范围内丢失了它。
    如果你使用一个变量

    var $tr = $("<tr>",{class: "ertert"});
    $tr.append($("<td>",{text:"adfsadfasdf"})).html()
    

    您将能够再次访问它。