困扰我两天的问题,谢谢大家帮忙解决!

BadBoy2003 2002-12-26 09:59:07
我的用意是这样的,我建立了两个层(A层和B层)和两个单选(radio,分别设置他们的value为1和2)当用户选择value为1的选项按钮时,显示A层,当用户选择value为2的选项按钮时,关闭A层显示B层。
要做到我上面的要求,下面的代码错误在什么地方?谢谢
<script>
function showbbs(){
if (document.thisform.bbs.value == 1) {
dv2.style.display = "";
}
else {
dv2.style.display ="none";
dv3.style.display = "";
}
}
</script>
...全文
27 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
qiushuiwuhen 2002-12-27
  • 打赏
  • 举报
回复
因为名称一样,所以才会产生数组
[0]表示第一个,即value=1的是否选中
烂笔头Danky 2002-12-27
  • 打赏
  • 举报
回复
秋水真细心,我连这点都忘掉了,但参考的方法还是可行的!向秋水学习!!!
qiushuiwuhen 2002-12-27
  • 打赏
  • 举报
回复
to dankey()
如果命名不同名称的话,就无法实现单选的功能了
烂笔头Danky 2002-12-27
  • 打赏
  • 举报
回复
一个radio是否被选择是不能用document.thisform.bbs.value == 1这样的语句来判断的,radio元素用发生checked来表示它是否被选择,

秋水所说的document.thisform.bbs[0].checked这样的方法是要求你的那两个radio要取相同的name属性值,因为一般人都会把一组相关的选项的radio都取相同的name值以区分别,这样会更利于程序的阅读和理解,而且以后你会发现这样的命名规则会更利于编程,当然你用document.thisform.bbs.checked == true你这样的方法也是正确的,只要你给不同的radio取不同的name值就可以了!
BadBoy2003 2002-12-27
  • 打赏
  • 举报
回复
哦,原来是这样,谢谢了,呵呵,
BadBoy2003 2002-12-26
  • 打赏
  • 举报
回复
把document.thisform.bbs.value == 1改成
document.thisform.bbs[0].checked
?????

[0]代表什么意思?
你的意思是不是这样
document.thisform.bbs.checked == true

如果这样的话,必须把radio命名为不同名称,如果命名不同名称的话,就无法实现单选的功能了,
没有指定language并不影响。
qiushuiwuhen 2002-12-26
  • 打赏
  • 举报
回复
document.thisform.bbs.value == 1

=>

document.thisform.bbs[0].checked
gzl 2002-12-26
  • 打赏
  • 举报
回复
<script language="JavaScript"/"VBScript">
你没指定language

87,991

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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