我有一些带有多个值的选择选项



$('#addItemModal #servicesBlock select[name=service_id] option[value='+service.val()+']').prop('disabled', true);

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<option value="26,30,31,32,34">01-10-2018 to 05-12-2018</option>





我想通过jQuery禁用使用值的选项

我当前的代码适用于单值期权,但是我现在需要更改以容纳多个值?

它引发如下异常


  未捕获的错误:语法错误,无法识别的表达式:#addItemModal #servicesBlock select [name = service_id] option [value = 26,30,31,32,34]

最佳答案

[value=]属性选择器期望该值在引号内:[vale="some_value"]。因此,以下应该起作用:

$('#addItemModal #servicesBlock select[name=service_id] option[value="'+service.val()+'"]').prop('disabled', true);


尽管JavaScript backtick可以使代码更具可读性(如果您的客户支持),则可以:

$(`#addItemModal #servicesBlock select[name=service_id] option[value="${ service.val() }"]`).prop('disabled', true);

关于javascript - 如何禁用具有多个用逗号分隔的值的选项?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53431488/

10-10 22:02
查看更多