jQuery检查复选框是否在页面上
jQuery check if Checkboxes are on page
我有一个通过ajax加载的表单。根据为获取表单而发送的参数,表单可能没有复选框,也可能有一个或多个复选框。
我想检查页面上是否存在复选框,如果是,则在验证期间提示用户选择一个复选框(如果未选中(。
如果存在,复选框具有相同的类和不同的ID。
<input type="checkbox" name="associatedClass"
value="$associatedClsNumVal" class="getAssociatedClass"
id="$associatedClsNumVal" />
什么是最好的方法?如果页面/表单中有复选框,jquery能"感知"吗?
谢谢。
谢谢你对我上一篇文章的帮助。我将添加到这个问题中,因为它是同一类型的问题。
我现在有一个页面,其中有一组或多组复选框,我需要确保每组中只选中一个复选框。
由于在页面加载之前我不知道有多少组,所以检查这一点的最佳方法是什么?
谢谢!
最简单的方法是检查页面上是否有类型复选框的输入。使用jQuery,您可以使用CSS选择器(如input[type="checkbox"]
(来查找DOM中的元素。把它和.length
结合起来,你就可以得到页面上有多少。完整的jQuery代码是
if ( $('input[type="checkbox"]').length ) {
// Validate checkboxes
}
如果页面上可能有其他不希望验证的复选框,那么您可以将搜索限制为特定元素。例如,如果您只想验证ID为myForm
的特定表单中的复选框,那么您可以选择该表单并使用.find()
在该表单中搜索复选框
if ( $('#myForm').find('input[type="checkbox"]').length )
{
// Validate checkboxes
}
然而,在进行验证时,您可能希望单独检查每个输入,因此,我们可以使用.each
查找所有复选框,然后一次处理一个复选框,而不仅仅是检查长度以确保页面上至少有一个复选复选框。
$('input[type="checkbox"]').each(function () {
// Validate this checkbox
});
这样做的好处是,如果页面上没有,它就不会尝试验证任何内容,而且它是完全有效的,所以我们不需要在验证之前检查是否有。
$(':checkbox').length
将为您统计页面上的所有复选框。如果你需要更具体的话,你可以通过给他们一个公共类来缩小范围。
例如,只计算类"section1"的复选框:
var $checks = $('.section1:checkbox');
console.log('There are ' + $checks.length + ' checkboxes');
https://jsbin.com/bowasi/edit?html,js,控制台,输出
if ( $( "#myElement" ).length ) {
// Your code here
}
- 主干-不管怎样,检查事件以前是否绑定过
- 如何让程序检查所选单词中是否有按键
- 用于检查数组中是否存在元素的javascript自定义方法
- 使用 jQuery 检查所有值是否为空或已填充
- 如何检查元素的内容是否为空,如果为空,请在jquery中删除该元素
- 使用map来检查是否为真'不起作用
- 遍历 JSON 对象并检查 URL 是否以某个值结尾
- 使用onkeyup JS事件检查输入的值是否唯一
- JS数组-检查对象值是否重复
- PhantomJS - 检查javascript函数是否正在运行的任何方法
- 如何使用jQuery可编辑插件检查ajax是否成功完成
- 如何在AngularJS中有效地检查日期是否有效
- 如何检查数组中的对象是否等于选项值
- 检查是否存在使用chrome扩展的javascript库
- 当一些文本粘贴到文本框中时(没有设置超时),是否检查数字
- 如何检查是否检查了分区中的所有单选按钮
- 验证是否检查了1到3个复选框,但id不同
- JavaScript 的类型函数是否检查空值
- 如何知道angularjs中的控制器中是否检查了单选按钮
- 在垃圾收集期间是否检查持久收集