<script language=javascript>
function a123(e)
{
var a=e.name;
var b=a.substr(a.length-1,a.length)
if(eval("document.all.a"+b+".disabled==false"))
{
eval("document.all.a"+b+".disabled=true")
eval("document.all.b"+b+".disabled=true")
}
else
{
eval("document.all.a"+b+".disabled=false")
eval("document.all.b"+b+".disabled=false")
}
}
</script>
<input name=a1 disabled><input name=b1 disabled><input name=c1 type=checkbox onclick=a123(this)><br>
<input name=a2 disabled><input name=b2 disabled><input name=c2 type=checkbox onclick=a123(this)><br>
<input name=a3 disabled><input name=b3 disabled><input name=c3 type=checkbox onclick=a123(this)><br>
经过测试了的,通过了
function a123(e)
{
var a=e.name;
var b=a.substr(a.length-1,a.length)
if(eval("document.all.a"+b+".disabled==false"))
{
eval("document.all.a"+b+".disabled=true")
eval("document.all.b"+b+".disabled=true")
}
else
{
eval("document.all.a"+b+".disabled=false")
eval("document.all.b"+b+".disabled=false")
}
}
</script>
<input name=a1 disabled><input name=b1 disabled><input name=c1 type=checkbox onclick=a123(this)><br>
<input name=a2 disabled><input name=b2 disabled><input name=c2 type=checkbox onclick=a123(this)><br>
<input name=a3 disabled><input name=b3 disabled><input name=c3 type=checkbox onclick=a123(this)><br>
经过测试了的,通过了
解决方案 »
- js一个函数中如何调用另一个函数中的实例函数?
- extjs gridpanel问题
- natineprince和shenzhenNBA进,
- 如何给表格中的某一列进行排序?
- 帮我看看这段JavaScript函数哪里错了!
- 最常用的document.getElementById,你真的了解吗?
- 寻找一个完整的检查邮件输入格式的函数
- 菜单问题
- 菜鸟的问题,IF语句,语法不对!请帮我!
- 为什么这个代码运行不出随意点击页面可以弹出窗口?
- 请问哪里可以下载Microsoft VML Generator application,微软现在不提供下载了
- 在线急等表格中同一行的文本框和CHECKBOX之间关系处理问题!!!!
<head>
<title>Untitled</title>
<Script language="javascript">
<!--function fncAll()
{ for (i=1;i<=document.form1.elements.length;i++)
{
if (document.form1.elements[document.form1.elements.length-1].checked)
{
document.form1.elements[i-1].disabled=false;
}
}
}
//-->
</Script></head><body>
<form name="form1">
<table>
<tr>
<td>
<input type="text" value="1" name="name1">
</td>
<td>
<input type="text" value="1" name="nickName1">
</td>
<td>
<input type="text" value="1" name="phone1">
</td>
<td>
<input type="text" value="1" name="address1">
</td>
<td>
<input type="checkbox" value="" name="checkbox1" onclick="">
</td>
</tr>
<tr>
<td>
<input type="text" value="2" name="name2">
</td>
<td>
<input type="text" value="2" name="nickName2">
</td>
<td>
<input type="text" value="2" name="phone2">
</td>
<td>
<input type="text" value="2" name="address2">
</td>
<td>
<input type="checkbox" value="" name="checkbox2" onclick="">
</td>
</tr>
<tr>
<td>
<input type="text" value="3" name="name3">
</td>
<td>
<input type="text" value="3" name="nickName3">
</td>
<td>
<input type="text" value="3" name="phone3">
</td>
<td>
<input type="text" value="3" name="address3">
</td>
<td>
<input type="checkbox" value="" name="checkbox3" onclick="fncAll()">
</td>
</tr>
</table>
</form>
</body>
</html>
//我只作了3个得,3代表n
onclick="fncAll(this.name)"
改一下函数体
function fncAll(names)
{
var temp=names.slice(8,names.length);
var No=parseInt(temp)
No=(No-1)*5+1 for (i=No;i<=No+3;i++)
{
if (document.form1.elements[No+3].checked)
{
document.form1.elements[i-1].disabled=true;
}
else
{
document.form1.elements[i-1].disabled=false;
}
}
}
<head>
<script language="javascript">
<!--
function lock_input(){
if(form1.c1.checked==1){
//禁用
form1.name1.disabled = false;
form1.nickname1.disabled = false;
form1.phone1.disabled = false;
form1.address1.disabled = false;
form1.name1.style="background-color:#EBEBEB"
}else{
//启用
form1.name1.disabled = true;
form1.nickname1.disabled = true;
form1.phone1.disabled = true;
form1.address1.disabled = true;
}
}
-->
</script>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"></head><body>
<form name="form1" method="post" action="">
<table width="600" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><input name="name1" type="text" id="name1" size="16" disabled></td>
<td><input name="nickname1" type="text" id="nickname1" size="16" disabled></td>
<td><input name="phone1" type="text" id="phone1" size="16" disabled></td>
<td><input name="address1" type="text" id="address1" size="16" disabled></td>
<td><input name="c1" type="checkbox" id="c1" value="1" onClick="javascript:lock_input();"></td>
</tr>
</table>
</form>
</body>
</html>
1、表单元素必须规则命名[有时候大家还是不适应]
2、如果需要高亮的Radio好象是有问题[不知道是不是我写错了]但时:
如果不规则命名,一个个去判断那会很晕[如果表单元素很多的话]所以看能不能想个中庸之道了,比如说根据在同一行的原理或者elements[i]的规律性,我现在还没想出来。
<html>
<head>
<script>
function f(cb){
var pp=cb.parentNode;
while(pp.tagName!='TR'){pp=pp.parentNode;}
var ins=pp.getElementsByTagName("INPUT");
for(var i=0;i<ins.length;i++){ if(ins.item(i).type=='text'){ ins.item(i).disabled=!cb.checked;} }
}
</script>
</head><body>
<table width="403" border="1">
<tr>
<td>姓名</td>
<td>地址</td>
<td>状态</td>
</tr>
<tr>
<td width="168"><input type="text" name="textfield"></td>
<td width="168"><input type="text" name="textfield2" ></td>
<td width="45"><input name="checkbox" type="checkbox" onClick="f(this);" value="checkbox" checked ></td>
</tr>
<tr>
<td><input type="text" name="textfield3"></td>
<td><input type="text" name="textfield22"></td>
<td><input name="checkbox2" type="checkbox" onClick="f(this);" value="checkbox" checked></td>
</tr>
<tr>
<td><input type="text" name="textfield32"></td>
<td><input type="text" name="textfield33"></td>
<td><input name="checkbox22" type="checkbox" onClick="f(this);" value="checkbox" checked></td>
</tr>
</table>
</body>
</html>
还有点问题:发现问题的算是好兄弟,呵呵!!另存为htm文件即可:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>checkbox的PP问题</title>
</head><body>
<!------------------------------------------------------------------------>
<form name="stc" method="post" action="statistic_users.asp" target="main" onSubmit="SubmitStcForm();return false;">
<table align="center" width="60%" border="1" cellpadding='4' cellspacing='0' borderColorLight='#C9DDFC' borderColorDark='#FFFFFF'>
<tr>
<td width="6%"><input name="stcbox" type="checkbox" id="stcbox" value="com" onClick="com.disabled=!this.checked;EnableButton(this);"></td>
<td width="16%"><div align="left"> 运营商:</div></td>
<td width="45%"><select name='com' class='selectshort'><option value=''></option><option value='CM'>中国移动</option><option value='CU'>中国联通</option><option value='CT'>中国电信</option></select></td>
<td width="33%"> </td>
</tr>
<tr >
<td><input name="stcbox" type="checkbox" id="stcbox" value="stcchannel" onClick="channelnum.disabled=!this.checked;EnableButton(this);"></td>
<td><div align="left"> 渠 道:</div></td>
<td><select name='channelnum' class='selectshort'><option value=''></option><option value='000'>000</option><option value='880'>880</option><option value='881'>881</option><option value='885'>885</option><option value='888'>888</option></select> </td>
<td> </td>
</tr>
<tr>
<td><input name="stcbox" type="checkbox" id="stcbox" value="stcservicecode" onClick="servicetype.disabled=!this.checked;EnableButton(this);"></td>
<td><div align="left"> 业 务:</div></td>
<td><select name='servicetype' class='selectshort'><option value=''></option><option value='JKQM'>考勤包月</option><option value='JKPM'>点评包月</option><option value='XH'>笑话</option><option value='TQ'>天气</option></select></td>
<td> </td>
</tr>
<tr>
<td><input name="stcbox" type="checkbox" id="stcbox" value="stcserviceuser" onClick="serviceuser.disabled=!this.checked;EnableButton(this);"></td>
<td> 客 服:</td>
<td><select name="serviceuser" class="selectshort" disabled>
</select></td>
<td> </td>
</tr>
<tr>
<td><input name="stcbox" type="checkbox" id="stcbox" value="stcarea" onClick="province.disabled=!this.checked;areacode.disabled=!this.checked;EnableButton(this);"></td>
<td><div align="left"> 地 区:</div></td>
<td><select name="province" class="selectshort" disabled>
</select>
<select name="areacode" class="selectshort" disabled>
</select></td>
<td> </td>
</tr>
<tr>
<td><input name="stcbox" type="checkbox" id="stcbox" value="stcdate" onClick="datestart.disabled=!this.checked;dateend.disabled=!this.checked;EnableButton(this);"></td>
<td><div align="left"> 日 期:</div></td>
<td><input name='datestart' type='text' class='input_text' size='12' title='请选择开始日期' onClick='fPopCalendar(datestart,datestart);return false' readonly> --- <input name='dateend' type='text' class='input_text' size='12' title='请选择结束日期' onClick='fPopCalendar(dateend,dateend);return false' readonly> </td>
<td> </td>
</tr>
<tr>
<td><input name="stcbox" type="checkbox" id="stcbox" value="stcsearchtype" onClick="EnableRadio(this);EnableButton(this);"></td>
<td><div align="left"> 类 型:</div></td>
<td><input type='radio' name='searchtype' value='1' checked> 注册<input type='radio' name='searchtype' value='0'> 退订 </td>
<td> </td>
</tr>
</table>
<p align="center">
<input type="submit" name="stc_submit" value="确 定">
</p>
</form>
<script language="javascript">
var form = document.stc;
{
for (var i=0;i<form.elements.length;i++)
{
{
if (form.elements[i].type!="checkbox")
{
form.elements[i].disabled=true;
}
}
}
}
function EnableRadio(ObjThis)
{
for (var i=0;i<form.elements.length;i++)
{
{
if (form.elements[i].type=="radio")
{
if(ObjThis.checked)
{
form.elements[i].disabled=false;
}
else
{
form.elements[i].disabled=true;
}
}
}
}
}
function EnableButton(ObjThis)
{
var ArrayCheckbox = document.getElementsByName("checkbox");
var NumCheckbox = 0;
for (var i=0;i<ArrayCheckbox.length;i++)
{
if (ArrayCheckbox[i].checked)
{
NumCheckbox++;
}
}
if (NumCheckbox<1)
{
form.stc_submit.disabled=!ObjThis.checked;
}
else
{
return true;
}
/**/
}
</script>
</body>
</html>
var pp=cb.parentNode;
while(pp.tagName!='TR'){pp=pp.parentNode;}
var ins=pp.getElementsByTagName("INPUT");
for(var i=0;i<ins.length;i++){ if(ins.item(i).type=='text'){ ins.item(i).disabled=!cb.checked;} }
}
我的函数中这一句if(ins.item(i).type=='text')是判断表单域的类型,你要想加入对别的表单框的判断是很简单的
第二个版本出来了[当然还有些人性化的问题:比如说radio组,如果多一个radio组的话就又要改,这个问题只要跟大花猫的结合就会完美地解决了]请将源码另存为*.htm
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>checkbox的PP问题</title>
</head><body>
<!------------------------------------------------------------------------>
<form name="stc" method="post" action="statistic_users.asp" target="main" onSubmit="SubmitStcForm();return false;">
<table align="center" width="60%" border="1" cellpadding='4' cellspacing='0' borderColorLight='#C9DDFC' borderColorDark='#FFFFFF'>
<tr>
<td width="6%"><input name="stcbox" type="checkbox" id="stcbox" value="com" onClick="com.disabled=!this.checked;EnableButton();"></td>
<td width="16%"><div align="left"> 运营商:</div></td>
<td width="45%"><select name='com' class='selectshort'><option value=''></option><option value='CM'>中国移动</option><option value='CU'>中国联通</option><option value='CT'>中国电信</option></select></td>
<td width="33%"> </td>
</tr>
<tr >
<td><input name="stcbox" type="checkbox" id="stcbox" value="stcchannel" onClick="channelnum.disabled=!this.checked;EnableButton();"></td>
<td><div align="left"> 渠 道:</div></td>
<td><select name='channelnum' class='selectshort'><option value=''></option><option value='000'>000</option><option value='880'>880</option><option value='881'>881</option><option value='885'>885</option><option value='888'>888</option></select> </td>
<td> </td>
</tr>
<tr>
<td><input name="stcbox" type="checkbox" id="stcbox" value="stcservicecode" onClick="servicetype.disabled=!this.checked;EnableButton();"></td>
<td><div align="left"> 业 务:</div></td>
<td><select name='servicetype' class='selectshort'><option value=''></option><option value='JKQM'>考勤包月</option><option value='JKPM'>点评包月</option><option value='XH'>笑话</option><option value='TQ'>天气</option></select></td>
<td> </td>
</tr>
<tr>
<td><input name="stcbox" type="checkbox" id="stcbox" value="stcserviceuser" onClick="serviceuser.disabled=!this.checked;EnableButton();"></td>
<td> 客 服:</td>
<td><select name="serviceuser" class="selectshort" disabled>
</select></td>
<td> </td>
</tr>
<tr>
<td><input name="stcbox" type="checkbox" id="stcbox" value="stcarea" onClick="province.disabled=!this.checked;areacode.disabled=!this.checked;EnableButton();"></td>
<td><div align="left"> 地 区:</div></td>
<td><select name="province" class="selectshort" disabled>
</select>
<select name="areacode" class="selectshort" disabled>
</select></td>
<td> </td>
</tr>
<tr>
<td><input name="stcbox" type="checkbox" id="stcbox" value="stcdate" onClick="datestart.disabled=!this.checked;dateend.disabled=!this.checked;EnableButton();"></td>
<td><div align="left"> 日 期:</div></td>
<td><input name='datestart' type='text' class='input_text' size='12' title='请选择开始日期' > --- <input name='dateend' type='text' class='input_text' size='12' title='请选择结束日期' > </td>
<td> </td>
</tr>
<tr>
<td><input name="stcbox" type="checkbox" id="stcbox" value="stcsearchtype" onClick="EnableRadio(this);EnableButton();"></td>
<td><div align="left"> 类 型:</div></td>
<td><input type='radio' name='searchtype' value='1' checked> 注册<input type='radio' name='searchtype' value='0'> 退订 </td>
<td> </td>
</tr>
</table>
<p align="center">
<input type="submit" name="stc_submit" value="确 定">
</p>
</form>
<script language="javascript">
var form = document.stc;
{
for (var i=0;i<form.elements.length;i++)
{
{
if (form.elements[i].type!="checkbox")
{
form.elements[i].disabled=true;
}
}
}
}
function EnableRadio(ObjThis)
{
for (var i=0;i<form.elements.length;i++)
{
{
if (form.elements[i].type=="radio")
{
if(ObjThis.checked)
{
form.elements[i].disabled=false;
}
else
{
form.elements[i].disabled=true;
}
}
}
}
}
function EnableButton()
{
var ArrayCheckbox = document.getElementsByName("stcbox");
var NumCheckbox = 0;
for (var i=0;i<ArrayCheckbox.length;i++)
{
if (ArrayCheckbox[i].checked)
{
NumCheckbox++;
form.stc_submit.disabled=false;
}
else
{
if (NumCheckbox<1)
{
form.stc_submit.disabled=true;
}
else
{
form.stc_submit.disabled=false;
}
}
}
}
</script>
</body>
</html>