为什么不用相同的name?那样简单了<input name="" type="button" value="GO!">
<form action="" method="get">
<input name="var" type="radio" value="var1">我<br>
<input name="var" type="radio" value="var2">你<br>
<input name="var" type="radio" value="var3">他<br>
</form>
<form action="" method="get">
<input name="var" type="radio" value="var1">我<br>
<input name="var" type="radio" value="var2">你<br>
<input name="var" type="radio" value="var3">他<br>
</form>
<input name="" type="button" value="GO!">
<form action="" method="get">
<input name="var1" type="radio" value="1">我<br>
<input name="var2" type="radio" value="2">你<br>
<input name="var3" type="radio" value="3">他<br>
</form>
<script>
function test()
{
if(event.srcElement.name=='var1')
{
document.forms[0].var2.checked=false
document.forms[0].var3.checked=false
document.forms[0].action="xx.asp?var=" + event.srcElement.value}if(event.srcElement.name=='var2')
{
document.forms[0].var1.checked=false
document.forms[0].var3.checked=false
document.forms[0].action="xx.asp?var=" + event.srcElement.value}
if(event.srcElement.name=='var3')
{
document.forms[0].var2.checked=false
document.forms[0].var1.checked=false
document.forms[0].action="xx.asp?var=" + event.srcElement.value}
if(event.srcElement.value=='GO!') document.forms[0].submit()
}
</script>
function document.onclick()
{
var ele = event.srcElement;
if (ele.tagName == "INPUT" && ele.type == "radio" && ele.checked)
{
var elements = ele.form.elements;
for (var i=0; i < elements.length; i++)
{
if (elements[i].tagName == "INPUT" && elements[i].type == "radio" && elements[i] != ele)
elements[i].checked = false;
}
}
}
</script>
你的方法很好,谢谢,如果是
<input name="var1" type="radio" value="1">我<br>
<input name="var2" type="radio" value="2">你<br>
<input name="var3" type="radio" value="3">他<br>
是动态产生的应该怎么写以上的javascrpit代码?
1,把你的name做成个数组,
2,遍历所有的input,找出类型为radio,name有var的。类似 saucer(思归)的方法。
而你设置的是<body onclick="test()"> 就不能用了吧?
能不能把onclick="test()"放在表<table onclick="test()" ....>里