如何在第二个选择框中禁用选择2 js选定值

时间:2017-04-19 19:06:21

标签: javascript jquery select2

我有两个选择框都使用select2 js,第一个你只能选择一个值,第二个你可以选择多个值,所以我想要的是让这个东西像这样 - 如果我选择“ somecategory“在第二个选择框中必须禁用此选项,如果我在选择框中选择”othercategory“,则应在第一个框中禁用相同的选项。

这是

    <select name="category" class="form-control catselect">
  /* here is some foreach stuff */
<option value="<?php echo $here we get ID;?>" <?php echo $here we get selected="selected";?>><?php echo $sub.lang_key($row->title);?></option>
</select>

<select name="multicat[]" class="form-control catmultiselect "  multiple="multiple">
  /* here is some foreach stuff */
<option value="<?php echo $here we get ID;?>" <?php echo $here we get selected="selected";?>><?php echo $sub.lang_key($row->title);?></option>
</select>

1 个答案:

答案 0 :(得分:0)

首先,将您的多类别选择框设置为禁用。接下来,为您的选择框提供一个ID(这是可选的。您可以使用"[name='category']"按名称而不是ID引用选择框。然后在选择框中添加一个事件处理程序:

$("#categorySelect").on("select2:select", function(e){
    var value = $("#categorySelect").val();
    var multicat = $("#multiCategorySelect");
    if(value == "othercategory") {
        multicat.prop('disabled', false); // Enable the multi-category select box
    } else {
        multicat.val(''); // If you want to clear the selection
        multicat.prop('disabled', true); // Set it back to disabled
    }
});