隐藏表格单元格 tr起个id名function test(id){document.getElementById(id).style.visibility="none";} 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个比较麻烦吧,只能提供一个思路,至于可行不可行就要你去测试了。哈,下面的代码不属于任何语言hidecol(colnum){ foreach(tr in trs) { curcol=0; foreach(td in tds) { curcol=curcol+td.colspan; if(curcol>=colnum) { if(td.colspan>1) { td.colspan-=1; }else{ td.hide(); } } } }} weizhuangzhi(壮志 盼星星 盼月亮 盼着深山出太阳) 可是当我要隐藏第五第的时候就会出错啦! <html xmlns="http://www.w3.org/1999/xhtml"><head> <title></title> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript"></script> <script type="text/javascript"> $(function () { $("#TableTemp").html($("#Table1").html()); }); function test() { $("#Table1").html($("#TableTemp").html()); var tempval = ""; var $checkedBoxes = $(":checkbox[name='chk']:checked"); if ($checkedBoxes.length <= 1) { alert("至少应该选择两列以上才能合并!"); return; } var mergeCols = ""; $checkedBoxes.each(function () { if (tempval != "") { if (Math.abs(parseInt(tempval) - parseInt($(this).val())) != 1) { alert("选中的必须是相邻的列!"); tempval = "-1"; return false; } } tempval = $(this).val(); mergeCols += $(this).val() + ","; }); if (tempval == "-1") { return; } mergeCols = mergeCols.substring(0, mergeCols.length - 1); var arr = mergeCols.split(","); var startTd = parseInt(arr[0]); var endTd = parseInt(arr[1]); $("#Table1>tbody>tr").each(function () { var tempHtml = ""; $(this).find("td").each(function (index) { if (arr.in_array(index + "")) { tempHtml += $(this).html(); } }); $(this).find("td:eq(" + startTd + ")").attr("colspan", arr.length).html(tempHtml); $(this).find("td").each(function (index) { if (index!=startTd && arr.in_array(index + "")) { $(this).remove(); } }); }); } Array.prototype.in_array = function (e) { for (i = 0; i < this.length && this[i] != e; i++); return !(i == this.length); } </script></head><body> <input type="checkbox" name="chk" value="0" />1 <input type="checkbox" name="chk" value="1" />2 <input type="checkbox" name="chk" value="2" />3 <input type="checkbox" name="chk" value="3" />4 <input type="checkbox" name="chk" value="4" />5<br /> <input type="button" value="合并" onclick="test()" /> <table id="TableTemp" style="display:none;"></table> <table border="1 " style="width: 80%" id="Table1"> <thead> <tr style="background-color:#E3EEF2;" ><td>1</td><td>2</td><td>3</td><td>4</td><td>5</td></tr> </thead> <tbody> <tr><td>1</td><td>2</td><td>3</td><td>4</td><td>5</td></tr> <tr><td>1</td><td>2</td><td>3</td><td>4</td><td>5</td></tr> </tbody> </table></body></html>实现了基本功能, 余下的, 你自己去发挥吧 对高手的揣测? name这个变量有什么特殊意义吗? 在一个jsp文件中jsp与JavaScript变量如何传递值 急!急!急!!javascript页面跳转失效!急,在线等. 如何能够达到用JS来更新HTML当中的内容 求JQ文本框控件,展示多列和模糊查询 现在才发现用javascript写个完整严密的类简直是自寻烦恼 简单正则表达式问题 请问:如何改变浏览器的标题. document.all(a).t1没有对象的问题!? js查找一字符重复出现的次数. 求助各位大侠了,这个页面浮动定位我实在无能为力了!
hidecol(colnum)
{
foreach(tr in trs)
{
curcol=0;
foreach(td in tds)
{
curcol=curcol+td.colspan;
if(curcol>=colnum)
{
if(td.colspan>1)
{
td.colspan-=1;
}else{
td.hide();
}
}
}
}
}
可是当我要隐藏第五第的时候就会出错啦!
<head>
<title></title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
$("#TableTemp").html($("#Table1").html());
});
function test() {
$("#Table1").html($("#TableTemp").html());
var tempval = "";
var $checkedBoxes = $(":checkbox[name='chk']:checked");
if ($checkedBoxes.length <= 1) {
alert("至少应该选择两列以上才能合并!");
return;
}
var mergeCols = "";
$checkedBoxes.each(function () {
if (tempval != "") {
if (Math.abs(parseInt(tempval) - parseInt($(this).val())) != 1) {
alert("选中的必须是相邻的列!");
tempval = "-1";
return false;
}
}
tempval = $(this).val();
mergeCols += $(this).val() + ",";
});
if (tempval == "-1") {
return;
}
mergeCols = mergeCols.substring(0, mergeCols.length - 1);
var arr = mergeCols.split(",");
var startTd = parseInt(arr[0]);
var endTd = parseInt(arr[1]);
$("#Table1>tbody>tr").each(function () {
var tempHtml = "";
$(this).find("td").each(function (index) {
if (arr.in_array(index + "")) {
tempHtml += $(this).html();
}
});
$(this).find("td:eq(" + startTd + ")").attr("colspan", arr.length).html(tempHtml);
$(this).find("td").each(function (index) {
if (index!=startTd && arr.in_array(index + "")) {
$(this).remove();
}
});
});
} Array.prototype.in_array = function (e) {
for (i = 0; i < this.length && this[i] != e; i++);
return !(i == this.length);
}
</script>
</head>
<body>
<input type="checkbox" name="chk" value="0" />1
<input type="checkbox" name="chk" value="1" />2
<input type="checkbox" name="chk" value="2" />3
<input type="checkbox" name="chk" value="3" />4
<input type="checkbox" name="chk" value="4" />5<br />
<input type="button" value="合并" onclick="test()" />
<table id="TableTemp" style="display:none;"></table>
<table border="1 " style="width: 80%" id="Table1">
<thead>
<tr style="background-color:#E3EEF2;" ><td>1</td><td>2</td><td>3</td><td>4</td><td>5</td></tr>
</thead>
<tbody>
<tr><td>1</td><td>2</td><td>3</td><td>4</td><td>5</td></tr>
<tr><td>1</td><td>2</td><td>3</td><td>4</td><td>5</td></tr>
</tbody>
</table>
</body>
</html>
实现了基本功能, 余下的, 你自己去发挥吧