找到第一个可见的必需下拉列表,它在jQuery中是空的

时间:2017-08-09 06:49:39

标签: javascript jquery

我已经尝试了下面的代码,但它不适合下拉,甚至认为下面的下拉列表都在索引0,TIA。

设计: -

<select required="required" id="Countries">
   <option selected="selected" value="0">--Select--</option>
   <option value="27">UK</option>
   <option value="1">United States</option>
</select>

<select required="required" id="States">
   <option value>--Select--</option>
   <option value="1">Abc</option>
   <option value="2">Xyz</option>
</select>

jQuery的: -

var totalRequired_Empty = $('input:blank:not(:checkbox,:button,:radio),select option[value="0"],textarea:blank').filter('[required]:visible').length;
if (totalRequired_Empty > 0) {
 var firstRequired = $('input:blank:not(:checkbox,:button,:radio),select option[value="0"],textarea:blank').filter('[required]:visible:first');

2 个答案:

答案 0 :(得分:2)

可能是旧的方式,但您可以申请$.each: -

$(document).ready(function(){
  $('select[required]').each(function(){
    if($(this).val() ==0 && $(this).val()!=='' && $(this).val()!=='undefined'){
      $(this).css({'background-color':'red'});
    }
 });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select required="required" id="Countries">
  <option selected="selected" value="0">--Select--</option>
  <option value="27">UK</option>
  <option value="1">United States</option>
</select>

<select required="required" id="States">
  <option value>--Select--</option>
  <option value="1">Abc</option>
  <option value="2">Xyz</option>
</select>

注意: - 您可以根据您的要求更改条件。

答案 1 :(得分:0)

请尝试这个

   $('select[required]').each(function () {
            if ($(this).val() == 0 || $(this).val() == '') {
                $(this).css({ 'background-color': 'red' });
            }
    });