简体   繁体   English

复选框验证-至少选择了一项

[英]Checkbox validation - at least one selected

I have number of checkboxes and another checkbox for "Select All" 我有多个复选框,还有“全选”复选框

I want to check if the user has selected at least one checkbox. 我想检查用户是否至少选择了一个复选框。 Need modification in javascript 需要在JavaScript中进行修改

<script language="Javascript">

function doSubmit(){
function check_checkboxes() 
{ 
checked=false;
var c = document.getElementsByTagName('INPUT'); 
for (var i = 1; i < c.length; i++) 
{ 
    if (c[i].type == 'checkbox') 
    { 
    if (c[i].checked) {
    return true} 
    else {alert("Please identify what warehouses comply:");  }
        } 
    } //if I place my struts action here..its not working?
}    
document.holiDay.command.value= 'addingApp'; //My Struts action if something checked. 
document.holiDay.submit(); 
}    
var all=document.getElementById('holiDay');

In HTML IDs should be unique, so getElementById will only return 1 element. 在HTML中,ID应该是唯一的,因此getElementById将仅返回1个元素。 Perhaps you could try getElementsByTagName - http://msdn.microsoft.com/en-us/library/ms536439(VS.85).aspx ? 也许您可以尝试getElementsByTagName- http://msdn.microsoft.com/zh-cn/library/ms536439( VS.85) .aspx

Something like... 就像是...

function check_checkboxes()
{
  var c = document.getElementsByTagName('input');
  for (var i = 0; i < c.length; i++)
  {
    if (c[i].type == 'checkbox')
    {
       if (c[i].checked) {return true}
    }
  }
  return false;
}

and change your Validate function to... 并将您的Validate函数更改为...

function Validate()
{
    if(!check_checkboxes())
    {
        alert("Please identify what warehouses comply:");  
        return false;
    }
    return true;
}

Select at least one check box using jqQery. 使用jqQery至少选择一个复选框。 Try the following code. 请尝试以下代码。

$('input[type="checkbox"][name="class"]').on('change', function () {
    var getArrVal = $('input[type="checkbox"][name="class"]:checked').map(function () {
        return this.value;
    }).toArray();

    if (getArrVal.length) {
        //execute the code
    } else {
        $(this).prop("checked", true);
        alert("Select at least one column");
        return false;
    }
    ;
});
 (function() {
  for(x in $ = document.getElementsByTagName("input"))
   with($[x])
    return (type == "checkbox" ? checked == true : 0)
 })

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM