Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.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_Validation_Button_Radio - Fatal编程技术网

Javascript 如何使用单选按钮?

Javascript 如何使用单选按钮?,javascript,validation,button,radio,Javascript,Validation,Button,Radio,如何将验证置于复选框上 这是我的密码: <script> function Validate(){ var cntct = document.getElementById("contact").value; if (cntct.value=="") { alert("Please select contact medium"); return false; } } </script> <input type="rad

如何将验证置于复选框上

这是我的密码:

<script>
function Validate(){
   var cntct = document.getElementById("contact").value;
   if (cntct.value=="")
   {
      alert("Please select contact medium");
      return false;
   }
}
</script>

<input type="radio" name="contact" id="contact" value="SMS">
<label>SMS</label> <input type="radio" name="contact" id="contact" value="CALL">
<label>CALL</label> <input type="radio" name="contact" id="contact" value="EMAIL">
<label>EMAIL</label>

函数验证(){
var cntct=document.getElementById(“联系人”).value;
如果(cntct.value==“”)
{
警告(“请选择接触媒体”);
返回false;
}
}
短讯服务
呼叫
电子邮件
请帮助..

简单: 如果(cntct==“”) {

}


cntct变量就是这个值

对于复选框和单选按钮,当“checked”属性为true时,将选中元素:

function Validate(){
    var selectedValue = "";
    var cntct = document.getElementsByname("contact");
    for(var i=0;i<cntct.length;i++) {
        if (cntct[i].checked)
        {
            selectedValue = cntct.value;
        }
    }
    if(selectedValue == "") {
        alert("Please select contact medium");
        return false;
    }
    return true;
}
函数验证(){
var selectedValue=“”;
var cntct=document.getElementsByname(“联系人”);
对于(var i=0;i
如何将验证置于复选框上

我猜您的意思是“提交表单时,如何确保选中其中一个单选按钮”(假设有一个表单尚未显示)

简单的方法是在默认情况下选中一个复选框,这样您就知道将始终选中一个复选框,而不必选中,例如

<input type="radio" name="contact" value="CALL" checked>
<input type="radio" name="contact" value="EMAIL">

另一种方法是在表单提交时(或任何您决定基于验证的事件)循环单选按钮,并确保选中一个

function checkButton() {
  var nodes = document.getElementsByName('contact');
  for (var i=0, iLen=nodes.length; i<iLen; i++) {

    // If find a checked one, job's done
    if (nodes[i].checked) return true;
  }

  // Otherwise, none were checked
  return false;
}
功能检查按钮(){
var nodes=document.getElementsByName('contact');
对于(var i=0,iLen=nodes.length;i请尝试以下方法:

<script>
function SubmitIt()
{
    if (document.forms.myform.elements.contact.value == "") 
    {
        alert("Please select contact medium..."); 
    }
}
</script>

<form name="myform" id="myform">
   <input type="radio" name="contact" id="contact" value="SMS">
   <label>SMS</label> <input type="radio" name="contact" id="contact" value="CALL">
   <label>CALL</label> <input type="radio" name="contact" id="contact" value="EMAIL">
   <label>EMAIL</label>

   <button onclick="SubmitIt();">Submit</button>
</form>

函数submitt()
{
if(document.forms.myform.elements.contact.value==“”)
{
警报(“请选择接触媒体…”);
}
}
短讯服务
呼叫
电子邮件
提交

您的多个
id
属性无效-它必须是唯一的。您需要迭代所有同名输入并搜索
。选中的
一个。哈?此示例显示单选按钮。单选按钮的属性是需要始终选择其中一个。而浏览器不会设置一个套利器很明显,一旦完成,您就不能取消选择一个。答案很简单-无需验证单选按钮!只需在html中将其中一个按钮设置为选中。在type=“radio”和name=“contact”之间添加“checked”一词仅适用于第一个单选按钮。此外,如上所述,您不能复制您拥有的id。为它们提供唯一的id-例如id='smsRb'id='callRb'id='emailRb'选中的属性是布尔值,不一定表示复选框实际已选中。如果复选框没有选中的属性,它将返回
null
wh是否选中复选框。最好测试选中的属性:
if(cntct.checked)
。当我再次选择单选按钮并单击“提交”按钮时,您的代码出现问题。再次单击“提交”按钮将打开一个警报框。请在2到3次后提交表单help@ZainAbid只需将returntrue或false语句添加到适当的位置,请参阅更新的代码