将所有TABLE元素更改为TD标记内的DIV仅jQuery

时间:2013-10-22 06:49:18

标签: jquery html

我有一个TABLE结构,我希望使用jQuery函数将其元素转换为DIV

HTML示例:

<table>
  <tr>
    <td>
             <table>
                <tbody>
                       <tr>
                           <td>1000+</td><td>&nbsp;&nbsp;</td><td>$0.115</td>
                       </tr>
                       <tr>
                           <td>2000+</td><td>&nbsp;&nbsp;</td><td>$0.106</td>
                       </tr>
                       <tr>
                           <td>5000+</td><td>&nbsp;&nbsp;</td><td>$0.099</td>
                       </tr>
                       <tr>
                       <td>10000+</td><td>&nbsp;&nbsp;</td><td>$0.092</td>
                       </tr>
                </tbody>
             </table>
    </td>
  </tr>
  <tr>
    <td>Some Data</td>
  </tr>
</table>

我只想替换的结构是那些在单元格(TD)标记内的表。因此,制作了一个代码来过滤和替换那些驻留在TD标记

中的表
$('table td:has(table)').replaceWith(function() {
           //Replace function starts here
})

我希望将<TABLE><TBODY><TH><TR><TD>等所有元素替换为<DIV>或{ {1}}元素。

我怎样才能实现这个目标?

<SPAN>

1 个答案:

答案 0 :(得分:0)

您可以使用以下内容:

$("#me").click(function(){
    var innerhtml = $("table tr td").html();
    var innerhtml = innerhtml.replace(/table/g, "div");
    var innerhtml = innerhtml.replace(/tbody/g, "div");
    var innerhtml = innerhtml.replace(/tr/g, "div");
    var innerhtml = innerhtml.replace(/td/g, "div");
    $("table tr td").html(innerhtml);
});

它从表内抓取HTML并用“div”替换“table”,“tbody”,“tr”和“td”的所有实例。

工作示例here