选择此选项后,jQuery检查其他选择元素

时间:2016-04-18 16:34:51

标签: javascript jquery

我在1 div下有3个HTML选择:

<div id="kurir_list">
    <div class="col-sm-6">
      <div class="form-group form-group-default form-group-default-select2 required">
        <select disabled class="tarif">
        <option select="selected"></option>
        <option value="12000">JNE REGULER</option>
        <option value="18000">JNE YES</option>
        </select>
      </div>
    </div>

    <div class="col-sm-6">
      <div class="form-group form-group-default form-group-default-select2 required">
        <select disabled class="tarif">
        <option select="selected"></option>
        <option value="12000">JNE REGULER</option>
        <option value="18000">JNE YES</option>
        </select>
      </div>
    </div>

    <div class="col-sm-6">
      <div class="form-group form-group-default form-group-default-select2 required">
        <select disabled class="tarif">
        <option select="selected"></option>
        <option value="12000">JNE REGULER</option>
        <option value="18000">JNE YES</option>
        </select>
      </div>
    </div>  
</div>

我有这个jquery:

$(".tarif").change(function() {
    if ($(".tarif").is(':disabled')) {                          
        alert ("yes you still have disabled element, next button disabled");
    } else {
        alert ("no, you don't have disabled element");

        // check the other select value
        $(".tarif").each(function() {
            alert($(this).val());
        });
    }
});

每次选择.tarif时,我都需要检查另外两个选择元素值。它是否仍然是空的。但是,我的jquery代码会提醒所有选择元素中的所有6个值。

如何让jquery能够通知我,#kurir_list是否还有空选择。谢谢。

1 个答案:

答案 0 :(得分:2)

也许你可以试试这样的东西,查看你的包装中的每一个选择,如果有任何空的val()那么你的变量将是真的,在这种情况下你可以做一些事情

var emptySelect = false;
$('#kurir_list select').each(function(){
    if (!$(this).find('option:selected').val()) {
        emptySelect = true;
    }
});
alert(emptySelect);