jQuery:检查页面上所有<select> s的值</select>

时间:2012-02-07 16:17:23

标签: javascript jquery

我有一个包含多个<select>元素的表单。

我想检查所有选择元素的值是否为“0”。我怎么能优雅地做到这一点?

目前我有这个:

var all_zero = true;
$('myform select').each(function() { 
  if ($(this).val() !== '0') { 
      all_zero = false;
  }
});
if (all_zero) { //do something

有没有人知道更好的方法呢?

3 个答案:

答案 0 :(得分:3)

测试选择器中的值。

var non_zero = $('myform select[value!="0"]').length;

if (non_zero === 0) { //do something

因此,如果没有select没有值"0"non_zero === 0将为true

答案 1 :(得分:0)

这是正确的方法,让它更清洁的一种方法只是在必要时声明变量。像这样:

$('myform select').each(function() { 
  if ($(this).val() !== '0') { 
      some_zero = true;
  }
});
if (!some_zero) { //do something

答案 2 :(得分:0)

您的代码很好,您可以尝试:

var all_zero = $('myform select').filter(function(){return $(this).val()!='0'}).length>0