在不改变现有情况下完成这个需求:点击变色,第一列变为灰色,其他俩列不变(也可以直接设置成变为白色之类的);点击变色2,第二列变为灰色,其他俩列为白色。
现在的情况是只有点击那一下的时候才会变,页面出来后就都恢复为默认色了。请问该怎么改?谢谢了。<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>demo</title><script type="text/javascript">
function sort(sTab) {
sTab = document.getElementById("myTable");
for ( var i = 1; i < sTab.rows.length; i++) { // 遍历除第一行外的所有行
sTab.rows[i].cells[0].bgColor = sTab.rows[i].cells[0].bgColor == "" ? "#e4e4e4" : "";
}
}
function sortb(sTab) {
sTab = document.getElementById("myTable");
for ( var i = 1; i < sTab.rows.length; i++) { // 遍历除第一行外的所有行
sTab.rows[i].cells[1].bgColor = sTab.rows[i].cells[0].bgColor == "" ? "#e4e4e4" : "";
}
}
function sortc(sTab) {
sTab = document.getElementById("myTable");
for ( var i = 1; i < sTab.rows.length; i++) { // 遍历除第一行外的所有行
sTab.rows[i].cells[2].bgColor = sTab.rows[i].cells[0].bgColor == "" ? "#e4e4e4" : "";
}
}
</script>
</head>
<body>
<table id="myTable" border="1" cellpadding="0" cellspacing="0"
height="99%">
<tr>
<th>第一列
<div id="tabsortasc">
<a href="NewFile2.jsp?page=1&sort=gray" onclick="sort(this);"><font color="blue" size="2">变色</font></a>
</div>
</th>
<th>第二列
<div id="tabsortasc">
<a href="NewFile2.jsp?page=1&sort=gray" onclick="sortb(this);"><font color="blue" size="2">变色2</font></a>
</div>
</th>
<th>第三列
<div id="tabsortasc">
<a href="NewFile2.jsp?page=1&sort=gray" onclick="sortc(this);"><font color="blue" size="2">变色3</font></a>
</div>
</th>
</tr>
<tr>
<td> aaaa</td>
<td> aaaa</td>
<td> aaaa</td>
</tr>
<tr>
<td> bbbb</td>
<td> bbbb</td>
<td> bbbb</td>
</tr>
<tr>
<td> cccc</td>
<td> cccc</td>
<td> cccc</td>
</tr>
</table>
</body>
</html>
现在的情况是只有点击那一下的时候才会变,页面出来后就都恢复为默认色了。请问该怎么改?谢谢了。<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>demo</title><script type="text/javascript">
function sort(sTab) {
sTab = document.getElementById("myTable");
for ( var i = 1; i < sTab.rows.length; i++) { // 遍历除第一行外的所有行
sTab.rows[i].cells[0].bgColor = sTab.rows[i].cells[0].bgColor == "" ? "#e4e4e4" : "";
}
}
function sortb(sTab) {
sTab = document.getElementById("myTable");
for ( var i = 1; i < sTab.rows.length; i++) { // 遍历除第一行外的所有行
sTab.rows[i].cells[1].bgColor = sTab.rows[i].cells[0].bgColor == "" ? "#e4e4e4" : "";
}
}
function sortc(sTab) {
sTab = document.getElementById("myTable");
for ( var i = 1; i < sTab.rows.length; i++) { // 遍历除第一行外的所有行
sTab.rows[i].cells[2].bgColor = sTab.rows[i].cells[0].bgColor == "" ? "#e4e4e4" : "";
}
}
</script>
</head>
<body>
<table id="myTable" border="1" cellpadding="0" cellspacing="0"
height="99%">
<tr>
<th>第一列
<div id="tabsortasc">
<a href="NewFile2.jsp?page=1&sort=gray" onclick="sort(this);"><font color="blue" size="2">变色</font></a>
</div>
</th>
<th>第二列
<div id="tabsortasc">
<a href="NewFile2.jsp?page=1&sort=gray" onclick="sortb(this);"><font color="blue" size="2">变色2</font></a>
</div>
</th>
<th>第三列
<div id="tabsortasc">
<a href="NewFile2.jsp?page=1&sort=gray" onclick="sortc(this);"><font color="blue" size="2">变色3</font></a>
</div>
</th>
</tr>
<tr>
<td> aaaa</td>
<td> aaaa</td>
<td> aaaa</td>
</tr>
<tr>
<td> bbbb</td>
<td> bbbb</td>
<td> bbbb</td>
</tr>
<tr>
<td> cccc</td>
<td> cccc</td>
<td> cccc</td>
</tr>
</table>
</body>
</html>
重新加载这页是不是就相当于又刷新了0.0 这也是我这个问题所在么?那我是不是应该让js修改css?
推荐楼主用广为流行的JavaScript库jQuery。jQuery的主旨是write less, do more. 寥寥几行,就能实现你要的功能。
快去了解下吧:http://www.jquery.com
在js方法里面根据参数做处理
你这样不就链接到了这个.jsp页面去了么 。
你的js没有问题 。
默认 第二列变颜色 ?那个需要页面传值了 。
现在是用js得到url中的参数,传给颜色值,可还是只是点击那一下才变色。
现在的问题应该是以刷新就回去了,这个值没存下来呀