单选按钮javascript验证

时间:2013-01-21 07:17:45

标签: javascript html

我有2个收音机按钮A& B. B按钮也有一个文本字段。

默认情况下,隐藏下一个按钮,它应出现在以下情况

  1. 如果用户点击按钮A
  2. 用户单击按钮B并在文本字段中输入文本
  3. 我试试这个:

    的JavaScript

    window.onload=function(){
       document.getElementById("next").style.display='none';
    } 
    
    function shownext(){
      var A = document.getElementById('A').value;
      var B = document.getElementById('B').value;
      var name = document.getElementById('name').value;
      if(A != "" || (B != "" && name != "")){
      document.getElementById("next").style.display='block';
         return false;
      }
      if(A == "" && B == "" && name == ""){
      document.getElementById("next").style.display='none';
         return false;
      }
    }
    

    HTML

    <input type="radio" name="A" id="A" value="A" onClick="shownext();"/>
    <input type="radio" name="A" id="B" value="B" onClick="shownext();"/>
    <input type="text" name="name" id="name" onKeyDown="shownext();" onKeyUp="shownext();"/>
    
    <a href="#q2" id="next"><img src="next.png"/></a>
    

1 个答案:

答案 0 :(得分:1)

您的第一个if语句中存在语法错误 - 您打开的括号多于关闭时的语法错误。

您的单选按钮始终有一个value,因此您只需检查该值即可检查其状态。您需要检查他们的checked属性。

你也不需要同时if,第一else if会更合适,因为你基本上只有两个可能的结果(显示“下一个”)按钮或隐藏它。)

这是working demo of the fixed code

相关问题