求助一个javascript问题

myveremy 2005-09-17 01:43:26
□gate1 □cate1 □date1
□gate2 □cate2 □date2
□gate3 □cate3 □date3
在一个数据集中,根据记录显示出下列checkbox
3列循环的checkbox,name分别是gate,cate,date
同一行中只能选中一个checkobox

出现的问题:
就是从左到右,先点gate1,然后点cate1或date1都很正常(即gate1为true,cate1,date1为false)。
但是从右到左,先点date1,然后点gate1,就不正常了(即date1为false,gate1为true)。都是左边的为true,右边为false

调用脚本:
<input type="checkbox" name="gate1" onClick="selectcheck(this.form.gate,this.form.cate,this.form.date)">


function selectcheck(field1,field2,field3){
for (var i = 0; i < field1.length; i++)
{ if (field1[i].checked)
{if( field2[i].checked || field3[i].checked || field4[i].checked)
{ alert("have same value on row");
field2[i].checked=false;field3[i].checked=false;
return false
}
}
if (field2[i].checked)
{if( field1[i].checked || field3[i].checked)
{ alert("have same value on row");
field1[i].checked=false;field3[i].checked=false;
return false
}
}
if (field3[i].checked)
{if( field1[i].checked || field2[i].checked)
{ alert("have same value on row");
field1[i].checked=false;field2[i].checked=false;
return false
}
}
}
...全文
64 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
myveremy 2005-09-17
  • 打赏
  • 举报
回复
对,这个没问题。
关键是调用脚本的时候,出现问题。
□gate1 □cate1 □date1
□gate2 □cate2 □date2
□gate3 □cate3 □date3
比如:
选中cate1,然后点gate1,这样会报一个信息,接着就选中gate1,把原先的cate1选中的给去掉。
(这就不对了,因为一般是保存先前选中的,但是它却保存了后面选中的)
如果先选中gate1,然后点cate1,这样会报一个信息,接着就只选中gate1
(这就对了,因为它保存先前选中的)
itzhiren 2005-09-17
  • 打赏
  • 举报
回复
<input type="checkbox" name="gate1" onClick="selectcheck(this.form.gate,this.form.cate,this.form.date)">

应该每一个checkbox都有这个才对吧?

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧