Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
单选按钮签入香草javascript不工作_Javascript_Html - Fatal编程技术网

单选按钮签入香草javascript不工作

单选按钮签入香草javascript不工作,javascript,html,Javascript,Html,我的单选按钮检查不起作用。有人能帮我吗?我 要检查单选按钮是否已选中。如果未选中,则我希望此程序发出警报。但在这个程序中,每当单选按钮未被选中时,我就不会收到警报 <div> <label for="gender">Gender: </label> <input type="radio" name="myRadio"> Male

我的单选按钮检查不起作用。有人能帮我吗?我 要检查单选按钮是否已选中。如果未选中,则我希望此程序发出警报。但在这个程序中,每当单选按钮未被选中时,我就不会收到警报

 <div>
              <label for="gender">Gender: </label>
              <input type="radio" name="myRadio"> Male
              <input type="radio" name="myRadio"> Female
              <input type="radio" name="myRadio"> Other
          </div>

性别:
男性
女性
其他
单选按钮检查功能如下所示:

function radioCheck(){
              var radio = document.forms["myForm"]["myRadio"].value;
    
                  for (var i=0; i<radio.length; i++) {
                    if (radio[i].checked){
                    break;
                  }else
                  {
                    alert("No radio button is checked");
                  }
              }
    
        }
功能无线电检查(){
var radio=document.forms[“myForm”][“myRadio”].value;

对于(var i=0;i好的,这是工作代码:

function radioCheck(){
  const radioList = document.getElementsByName("myRadio")
  let notChecked = false;
  
  for(let i = 0; i < radioList.length; i ++){
    if(radioList[i].checked){
        return;
    } else {
        notChecked = true;
    }
   
  }

   if(notChecked){
      alert("No radio button is checked")
    }
}

radioCheck()
功能无线电检查(){
const radioList=document.getElementsByName(“myRadio”)
设缺口=假;
for(设i=0;i
解释:

  • 首先,您必须使用
    document.getElementsByName
    获取所有输入,因为在本例中,它们唯一相同的是
    name
    属性,即
    name=“myRadio”
  • 第二件事,我添加了变量
    notChecked
    ,该变量在初始值为false,因此当它将遍历所有输入并看到其中一个未被选中时,它将显示警报
  • 然后,您只需对遍历所有元素的循环执行常规操作,并检查它们是否被选中
  • 如果选中其中一个,它将停止循环并不返回任何内容,否则它将设置
    notcked=true
  • 循环后,我只需检查
    notChecked
    值是否为真,如果为真,则显示警报
  • 最后也是最重要的一点-您必须至少运行一次此函数才能执行它,因此您只需在最后添加
    radioCheck()
  • 我还将此部分添加到html
    run-reach
因此,单击按钮
“再次运行”
后,您可以再次使用它(仅用于测试)

下面是一个工作示例:


希望我的回答能帮助你:)如果您有任何问题,请询问

您能解释一下您想要达到什么目的吗?如果没有选中,您想显示警报,但是在选中某项时不执行任何操作吗?@Sowam我想检查单选按钮是否选中。如果没有选中,则我希望此程序发出警报。但是在本程序中,每当按钮未选中时,都会显示警报cked我没有收到警报。你想在检查或未检查时发出警报?或者两者都要发出警报?我不明白你的答案…你为什么使用“中断”有吗?为什么它之前什么都没有?所以当单选按钮没有被选中并且我使用了break时,我想发出一个警报,因为如果找到了选中的按钮,那么程序应该从if块终止。我添加了一个答案:)并更新了它