//如果一个组的按钮被点击若针对这个按钮在点击一次则无效,
//点击其他按钮后在点击这个按钮就有效,
//也就是一个单选按钮不能够连续 的点击
=================================================
radio选择框本来就只能点一次,难道连续点击会有特殊功能?

解决方案 »

  1.   

    to windancer(风精灵) 
    我在每一次的点击都会触发一个事件,如果对同一个按钮点击则在重新的触发这个事件不就是触发两次了吗?
      

  2.   

    <HTML><HEAD>
    <BODY>
    <script language='javascript'>
    old_obj = "";
    function checkRadio(strvalue, obj)//参数可代可不代
    {
    if (obj != old_obj) {
    old_obj = obj;
    } else {
    if (obj.checked == true) {
    obj.checked = true;
    } else {
    obj.checked = false;
    }
    old_obj = "";
    }
    1.//如果一个组的按钮被点击若针对这个按钮再点击一次则无效,
      //点击其他按钮后在点击这个按钮就有效,
               //也就是一个单选按钮不能够连续 的点击
    }
    function save()
    {
    r1_count = document.all.r1.length;
    r2_count = document.all.r2.length;
    for (var i=0; i<r1_count; i++) {
    if (document.all("r1")[i].checked == true) {
    alert("组1被选中的值为" + document.all("r1")[i].value);
    }
    }
    for (var i=0; i<r2_count; i++) {
    if (document.all("r2")[i].checked == true) {
    alert("组2被选中的值为" + document.all("r2")[i].value);
    }
    }
    2.//点击保存之后求出两个组的被选中的单选按钮的值
    }
    </script>
    <P>
        <INPUT type=radio name=r1 value=0 checked onclick='checkRadio(0,"r1")'>
        <INPUT type=radio name=r1 value=1 onclick='checkRadio(1,"r1")'>
        <INPUT type=radio name=r1 value=2 onclick='checkRadio(2,"r1")'>
    </P>
    <P>
        <INPUT type=radio name=r2 value=0 checked onclick='checkRadio(0,"r2")'>
        <INPUT type=radio name=r2 value=1 onclick='checkRadio(1,"r1")'>
        <INPUT type=radio name=r2 value=2 onclick='checkRadio(2,"r1")'>
    </P>
    <P><INPUT type=button value=保存 onclick='save()'></P>
    </BODY></HTML>
      

  3.   

    改:
    old_obj = ""; //标志上一次点击的单选框
    function checkRadio(strvalue, obj)//参数可代可不代
    {
    if (obj == old_obj) { //如果上一次点击的就是这个按钮,那么直接返回
    return;
    } else {
    old_obj = obj;
    //以下执行你的代码
    }
    }
      

  4.   

    sorry:<P>
        <INPUT type=radio name=r1 value=0 checked onclick='checkRadio(0,this)'>
        <INPUT type=radio name=r1 value=1 onclick='checkRadio(1,this)'>
        <INPUT type=radio name=r1 value=2 onclick='checkRadio(2,this)'>
    </P>
    <P>
        <INPUT type=radio name=r2 value=0 checked onclick='checkRadio(0,this)'>
        <INPUT type=radio name=r2 value=1 onclick='checkRadio(1,this)'>
        <INPUT type=radio name=r2 value=2 onclick='checkRadio(2,this)'>
    </P>
    <P><INPUT type=button value=保存 onclick='save()'></P>
    </BODY></HTML>
      

  5.   

    <HTML><HEAD>
    <BODY>
    <script language='javascript'>
    function checkRadio(i)//参数可代可不代
    {}
    }
    function save()
    {
    var r1,r2;
    if (document.form1.r1[0].checked){
    r1=0
    }
    if (document.form1.r1[1].checked){
    r1=1
    }
    if (document.form1.r1[2].checked){
    r1=2
    }
    if (document.form1.r2[0].checked){
    r2=0
    }
    if (document.form1.r2[1].checked){
    r2=1
    }
    if (document.form1.r2[2].checked){
    r2=2
    }
    alert('R1组的值:'+r1+'\n'+'R2组的值:'+r2);
    }
    </script>
    <P><form name="form1" >
        <INPUT type=radio name=r1 value=0 checked onclick='checkRadio(0)'>
        <INPUT type=radio name=r1 value=1 onclick='checkRadio(1)'>
        <INPUT type=radio name=r1 value=2 onclick='checkRadio(2)'>
    </P>
    <P>
        <INPUT type=radio name=r2 value=0 checked onclick='checkRadio(0)'>
        <INPUT type=radio name=r2 value=1 onclick='checkRadio(1)'>
        <INPUT type=radio name=r2 value=2 onclick='checkRadio(2)'>
    </P>
    <P><INPUT type=button value=保存 onclick='save()'>
    </form>
    </P>
    </BODY></HTML>
      

  6.   

    完整的:
    <script language='javascript'>
    function save()
    {
    r1_count = document.all.r1.length;
    r2_count = document.all.r2.length;
    for (var i=0; i<r1_count; i++) {
    if (document.all("r1")[i].checked == true) {
    alert("组1被选中的值为" + document.all("r1")[i].value);
    }
    }
    for (var i=0; i<r2_count; i++) {
    if (document.all("r2")[i].checked == true) {
    alert("组2被选中的值为" + document.all("r2")[i].value);
    }
    }
    2.//点击保存之后求出两个组的被选中的单选按钮的值
    }
    old_obj = "";
    function checkRadio(strvalue, obj)//参数可代可不代
    {
    if (obj == old_obj) { //如果上一次点击的就是这个按钮,那么直接返回
    alert("上一次点击的就是这个按钮")
    return;
    } else {
    old_obj = obj;
    alert("第一次点击这个按钮")
    //以下执行你的代码
    }
    }</script>
    <P>
        <INPUT type=radio name=r1 value=0 checked onclick='checkRadio(0,this)'>
        <INPUT type=radio name=r1 value=1 onclick='checkRadio(1,this)'>
        <INPUT type=radio name=r1 value=2 onclick='checkRadio(2,this)'>
    </P>
    <P>
        <INPUT type=radio name=r2 value=0 checked onclick='checkRadio(0,this)'>
        <INPUT type=radio name=r2 value=1 onclick='checkRadio(1,this)'>
        <INPUT type=radio name=r2 value=2 onclick='checkRadio(2,this)'>
    </P>
    <P><INPUT type=button value=保存 onclick='save()'></P>
      

  7.   

    我想你要的是这个效果吧
    <HTML><HEAD>
    <BODY>
    <script language='javascript'>
    var gt
    function checkRadior1(strvalue)//参数可代可不代
    {    
         r1.value=strvalue;
         for(i=0;i<3;i++) {r1[i].disabled=1;r2[i].disabled=0;}      
     }
    function checkRadior2(strvalue)//参数可代可不代
    {    
         r2.value=strvalue;
         for(i=0;i<3;i++) {r2[i].disabled=1;r1[i].disabled=0;}      
     }
    function save()
    {
        
        alert('R1组的值:'+r1.value+" "+'R2组的值:'+r2.value)
    }
    </script>
    <P >
        <INPUT type=radio name=r1 value=0 onclick='checkRadior1(0)'>
        <INPUT type=radio name=r1 value=1 onclick='checkRadior1(1)'>
        <INPUT type=radio name=r1 value=2 onclick='checkRadior1(2)'>    </P>
    <P>
        <INPUT type=radio name=r2 value=0 onclick='checkRadior2(0)'>
        <INPUT type=radio name=r2 value=1 onclick='checkRadior2(1)'>
        <INPUT type=radio name=r2 value=2 onclick='checkRadior2(2)'>
    </P>
    <P><INPUT type=button value=保存 onclick='save()'></P>
    </BODY></HTML>
      

  8.   

    <HTML><HEAD>
    <BODY>
    <script language='javascript'>
    old_obj = "";
    function checkRadio(strvalue, obj)//参数可代可不代
    {
    if (obj != old_obj) {
    old_obj = obj;
    } else {
    if (obj.checked == true) {
    obj.checked = true;
    } else {
    obj.checked = false;
    }
    old_obj = "";
    }
    1.//如果一个组的按钮被点击若针对这个按钮再点击一次则无效,
      //点击其他按钮后在点击这个按钮就有效,
               //也就是一个单选按钮不能够连续 的点击
    }
    function save()
    {
    r1_count = document.all.r1.length;
    r2_count = document.all.r2.length;
    for (var i=0; i<r1_count; i++) {
    if (document.all("r1")[i].checked == true) {
    alert("组1被选中的值为" + document.all("r1")[i].value);
    }
    }
    for (var i=0; i<r2_count; i++) {
    if (document.all("r2")[i].checked == true) {
    alert("组2被选中的值为" + document.all("r2")[i].value);
    }
    }
    2.//点击保存之后求出两个组的被选中的单选按钮的值
    }
    </script>
    <P>
        <INPUT type=radio name=r1 value=0 checked onclick='checkRadio(0,"r1")'>
        <INPUT type=radio name=r1 value=1 onclick='checkRadio(1,"r1")'>
        <INPUT type=radio name=r1 value=2 onclick='checkRadio(2,"r1")'>
    </P>
    <P>
        <INPUT type=radio name=r2 value=0 checked onclick='checkRadio(0,"r2")'>
        <INPUT type=radio name=r2 value=1 onclick='checkRadio(1,"r1")'>
        <INPUT type=radio name=r2 value=2 onclick='checkRadio(2,"r1")'>
    </P>
    <P><INPUT type=button value=保存 onclick='save()'></P>
    </BODY></HTML>
      

  9.   

    to JavaBoyCaoJi(老曹):
    你的方法如果在一个单选按钮上点击一次他没有触发一个事件,可是连续点击还是会产生事件的。
    to manyou(他山之石):
    我的这个单选按钮不是规定的数量,你那样作就是将单选的按钮就规定为只有两个了,是不是用数组做可以呢。
    to descreekert() ( ):
    你这种效果不错,可是不是我想要的
    不管怎么说先谢谢各位了!
      

  10.   

    更正:
    to manyou(他山之石):
    我的这个单选按钮组不是规定的数量,你那样作就是将单选的按钮就规定为只有两组了,是不是用数组做可以呢。如果可以请你指点,谢了