jQuery选中后检查其他选择元素

jQuery Check Other Select Elements Once This Is Selected

本文关键字:其他 选择 元素 检查 jQuery      更新时间:2023-09-26

我在1div下选择了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时,我都需要检查另外两个select元素的值。不管它是否仍然是空的。但是,我的jquery代码提醒所有select元素中的所有6个值。

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

也许你可以尝试这样的方法,查看包装中的每个select,如果有空的val(),那么你的变量将为true,在这种情况下你可以做一些

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