单选按钮javascript验证

单选按钮javascript验证,javascript,html,Javascript,Html,我有两个单选按钮A和B。B按钮也有一个文本字段 默认情况下,“下一步”按钮处于隐藏状态,在以下情况下应显示该按钮 如果用户单击按钮A 用户单击按钮B并在文本字段中输入文本 我试试这个: JavaScript HTML 您在第一个if语句中出现语法错误-您打开的括号比关闭的括号多 您的单选按钮总是有一个值,因此您不能仅通过检查值来检查其状态。您需要检查他们的checked属性 您也不需要同时使用ifs,因为您基本上只有两种可能的结果(显示“下一步”按钮或隐藏它),因此第一个if的else更合适 这

我有两个单选按钮A和B。B按钮也有一个文本字段

默认情况下,“下一步”按钮处于隐藏状态,在以下情况下应显示该按钮

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

    JavaScript HTML
    您在第一个
    if
    语句中出现语法错误-您打开的括号比关闭的括号多

    您的单选按钮总是有一个
    ,因此您不能仅通过检查值来检查其状态。您需要检查他们的
    checked
    属性

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


    这里有一个。

    切换到jQuery?另外,您希望两个
    单选按钮都有相同的名称
    @BackinaFlash ya由于错误,我给出了不同的名称,我想修复此代码,而不是切换到jqueryy如果块的第一个
    中缺少括号。
    
    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;
      }
    }
    
    <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>