JQ和JS动态拆分表格的方法
<tablewidth="100%"border="0"style="text-align:center;"><tr><td>编号</td><td>项目</td><td>...
<table width="100%" border="0" style="text-align:center;">
<tr>
<td>编号</td>
<td>项目</td>
<td>产品</td>
<td>对比</td>
<td>类别</td>
</tr>
<tr>
<td>1</td>
<td>项目1</td>
<td>产品</td>
<td>产品1VS产品2</td>
<td>类别</td>
</tr>
<tr>
<td>2</td>
<td>项目2</td>
<td>产品</td>
<td>产品3</td>
<td>类别</td>
</tr>
<tr>
<td>3</td>
<td>项目3</td>
<td>产品</td>
<td>产品4VS产品5</td>
<td>类别</td>
</tr>
....
</table>
表格代码如上,请问如何用JS或者JQ把对比栏里的VS前后拆分成两列?
效果如图,上面是原图,下面是拆分后的 展开
<tr>
<td>编号</td>
<td>项目</td>
<td>产品</td>
<td>对比</td>
<td>类别</td>
</tr>
<tr>
<td>1</td>
<td>项目1</td>
<td>产品</td>
<td>产品1VS产品2</td>
<td>类别</td>
</tr>
<tr>
<td>2</td>
<td>项目2</td>
<td>产品</td>
<td>产品3</td>
<td>类别</td>
</tr>
<tr>
<td>3</td>
<td>项目3</td>
<td>产品</td>
<td>产品4VS产品5</td>
<td>类别</td>
</tr>
....
</table>
表格代码如上,请问如何用JS或者JQ把对比栏里的VS前后拆分成两列?
效果如图,上面是原图,下面是拆分后的 展开
3个回答
展开全部
<script src="js/jquery-1.7.2.min.js"></script>
<script>
$(function(){
$('tr>td:not(:contains("VS"))').attr({'colspan':3});
$('tr>td:contains("VS")').each(function(){
var _1 = $(this).html();
var _2 = _1.split("VS");
$(this).html(_2[0]).after('<td>'+_2[1]+'</td>').after('<td>VS</td>');
})
});
</script>
<style>
table{
border-top: 1px solid #eeeeff;
border-right: 1px solid #eeeeff;
}
td{
border-left: 1px solid #eeeeff;
border-bottom: 1px solid #eeeeff;
}
</style>
<table width="100%" border="0" style="text-align:center;">
<tr>
<td>编号</td>
<td>项目</td>
<td>产品</td>
<td>对比</td>
<td>类别</td>
</tr>
<tr>
<td>1</td>
<td>项目1</td>
<td>产品</td>
<td>产品1VS产品2</td>
<td>类别</td>
</tr>
<tr>
<td>2</td>
<td>项目2</td>
<td>产品</td>
<td>产品3</td>
<td>类别</td>
</tr>
<tr>
<td>3</td>
<td>项目3</td>
<td>产品</td>
<td>产品4VS产品5</td>
<td>类别</td>
</tr>
</table>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
$("table td:not(:contains('VS'))").attr("colspan", "3");
$("table td:contains('VS')").each(function () {
var text = $(this).text().split("VS");
$(this).text(text[0]).after("<td>" + text[1] + "</td>").after("<td>VS</td>")
});
追答
$("#tbl2 tr").each(function (i) {
if (i == 0) {
$(this).find("td:eq(3)").attr("colspan", "3");
return;
}
if (i == 1) {
$(this).find("td:eq(0)").attr("colspan", "7");
return;
}
var td = $(this).find("td:eq(3)")
if (td.text().indexOf('VS') != -1) {
var text = td.text().split("VS");
td.text(text[0]).after("<td>" + text[1] + "</td>").after("<td>VS</td>");
} else {
td.attr("colspan", "3");
}
});
<table id="tbl2" width="100%" border="1" style="text-align: center;">
<tr>
<td>编号</td>
<td>项目</td>
<td>产品</td>
<td>对比</td>
<td>类别</td>
</tr>
<tr>
<td>这里漏掉一行</td>
</tr>
...
</table>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询