想得到效果是:当 id="prjdirect" value为"no"时,不选取
<script>
function checkall(){
var chk=document.getElementsByTagName("input");
for(var ii=0;ii<chk.length;ii++){
//if document.getElementById("prjdirect").value == "yes" //这句不用,可实现反选
if(chk[ii].type.toLowerCase()=="checkbox")
chk[ii].checked=!chk[ii].checked;
}
}
</script>
<form action="test8.asp" method="post">
<table width="60%" border="0" cellpadding="0" cellspacing="1" bgcolor="B0C8EA" align="center">
<tr bgcolor="#FFFFFF">
<td align="center"><input type="checkbox" name="upmodproject" value="DE0033"></td>
<td align="left" width="450"><a href="editwlproject.asp?prjname=DE0033">DE0033</a></td>
<td align="center" id="prjdirect">yes</td>
<td align="center">no</td>
</tr>
<tr bgcolor="#FFFFFF">
<td align="center"><input type="checkbox" name="upmodproject" value="DE0037"></td>
<td align="left" width="450"><a href="editwlproject.asp?prjname=DE0037">DE0037</a></td>
<td align="center" id="prjdirect">no</td>
<td align="center">no</td>
</tr>
<p align="left"> <input type="button" value="全部选中" onClick="checkall()"> </p>
</table>
</form>
<script>
function checkall(){
var chk=document.getElementsByTagName("input");
for(var ii=0;ii<chk.length;ii++){
//if document.getElementById("prjdirect").value == "yes" //这句不用,可实现反选
if(chk[ii].type.toLowerCase()=="checkbox")
chk[ii].checked=!chk[ii].checked;
}
}
</script>
<form action="test8.asp" method="post">
<table width="60%" border="0" cellpadding="0" cellspacing="1" bgcolor="B0C8EA" align="center">
<tr bgcolor="#FFFFFF">
<td align="center"><input type="checkbox" name="upmodproject" value="DE0033"></td>
<td align="left" width="450"><a href="editwlproject.asp?prjname=DE0033">DE0033</a></td>
<td align="center" id="prjdirect">yes</td>
<td align="center">no</td>
</tr>
<tr bgcolor="#FFFFFF">
<td align="center"><input type="checkbox" name="upmodproject" value="DE0037"></td>
<td align="left" width="450"><a href="editwlproject.asp?prjname=DE0037">DE0037</a></td>
<td align="center" id="prjdirect">no</td>
<td align="center">no</td>
</tr>
<p align="left"> <input type="button" value="全部选中" onClick="checkall()"> </p>
</table>
</form>
HTML不规范,P怎么直接放Table里面
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head> <script type="text/javascript" src="jquery/jquery.js"></script> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>New Document </title> <script type="text/javascript"> function checkall() {
var chk = document.getElementById("tb").getElementsByTagName("input");
for (var ii = 0; ii < chk.length; ii++) {
//if document.getElementById("prjdirect").value == "yes" //这句不用,可实现反选 if (chk[ii].type.toLowerCase() == "checkbox")
//yes后面有空格换行 之类的,所以用indexOf
if (chk[ii].parentNode.parentNode.childNodes[2].innerHTML.indexOf('yes') > -1) {
chk[ii].checked = !chk[ii].checked;
}
}
}
</script></head>
<body>
<p align="left">
<input type="button" value="全部选中" onclick="checkall()">
</p>
<table id='tb' width="60%" border="0" cellpadding="0" cellspacing="1" bgcolor="B0C8EA"
align="center">
<tr bgcolor="#FFFFFF">
<td align="center">
<input type="checkbox" name="upmodproject" value="DE0033">
</td>
<td align="left" width="450">
<a href="editwlproject.asp?prjname=DE0033">DE0033</a>
</td>
<td align="center" id="prjdirect">
yes
</td>
<td align="center">
no
</td>
</tr>
<tr bgcolor="#FFFFFF">
<td align="center">
<input type="checkbox" name="upmodproject" value="DE0037">
</td>
<td align="left" width="450">
<a href="editwlproject.asp?prjname=DE0037">DE0037</a>
</td>
<td align="center" id="prjdirect">
no
</td>
<td align="center">
no
</td>
</tr>
</table>
</body>
</html>
$("input[type='checkbox'][value!='no']").each(function(){
$(this).attr("checked",!$(this).attr("checked"));
});
if (chk[ii].parentNode.parentNode.childNodes[2].innerHTML.indexOf('yes') > -1) {
function checkall()
{
var chk = document.getElementsByTagName("input");
for (var ii = 0; ii < chk.length; ii++)
{
// if document.getElementById("prjdirect").value == "yes" //这句不用,可实现反选
if (chk[ii].type.toLowerCase() == "checkbox")
{
if (chk[ii] != 'prjdirect' && chk[ii].value != 'no')
{
chk[ii].checked = !chk[ii].checked;
}
}
}
}
</script>
<script>
function checkall()
{
var chk = document.getElementsByTagName("input");
for (var ii = 0; ii < chk.length; ii++)
{
if (chk[ii].type.toLowerCase() == "checkbox")
{
if (chk[ii] != 'prjdirect' && chk[ii].value != 'no')
{
chk[ii].checked = false;
}
}
}
}
</script>
if (chk[ii].id != 'prjdirect' && chk[ii].value != 'no')不应该有问题啊 那你的选中是选中什么?选中的不是checkbox么
只是不明白这句的意思,
if (chk[ii].parentNode.parentNode.childNodes[2].innerHTML.indexOf('yes') > -1)
childNodes[2]第二个孩子节点
indexOf('yes') > -1 是否包含yes