javascript - 使用 jquery 根据所选值禁用下拉选项

标签 javascript jquery drop-down-menu

我有一个下拉列表,其中包含 fb-test、fb-testing、tw-test、tw-testing 等值,如下所示。我正在尝试通过以下方式禁用这些选项。

  1. 当用户从下拉列表中选择 fb-test 时,fb-testing 应禁用。
  2. 当用户选择 tw-testing 或 tw-test 时,应禁用包含“tw”的选项。

这是我正在使用的 HTML 标记:

<select id="wpri-profile">
    <option value="0">--Select--</option>
    <option value="fb-test">fb-test</option>
    <option value="fb-testing">fb-testing</option>
    <option value="tw-test">tw-test</option>
    <option value="tw-testing">tw-testing</option>                  
</select>

这是我正在尝试的代码:

$('#wpri-profile').on('change',function(){
    $(this).find('option').prop('disabled',false);  
    var val = $(this).val();
    var prof = val.split("-");
    alert(prof[0]);
    $(this).find('option[value="'+prof[0]+'"]').prop('disabled',true);
});

最佳答案

使用以选择器^开头的值:

$('#wpri-profile').on('change',function(){
   $(this).find('option').prop('disabled',false);  
   var val = $(this).val();
   var prof = val.split("-");

   // starting with selector shall do it
   $(this).find('option[value^="'+prof[0]+'"]').prop('disabled',true);
});

关于javascript - 使用 jquery 根据所选值禁用下拉选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40422727/

相关文章:

javascript - 无法在 Javascript 中将文本复制到剪贴板

jquery - 关于使用 jQuery 操作视频 HTML5 视频的几个问题

android - 如何创建下拉列表?

jquery - 如何在不使用 selectmenu ('refresh' 的情况下刷新 JQuery 中的下拉列表?

javascript - attrs.$set ('ngClick' , 函数名 + '()' );不再适用于 angular 1.2rc3

javascript - 根据 url 分配不同的类

javascript - 如何手动触发 Dropzone 的点击(打开选择文件对话框)

jquery - Firefox 中未发送 Ajax 请求,错误未知

c# - 如何在不丢失比例的情况下使图片具有特定的宽度和高度?

php - 如何使用从数据库创建的动态下拉列表来构建 MySQL 查询