Javascript 如何禁用引导下拉列表

Javascript 如何禁用引导下拉列表,javascript,jquery,html,css,twitter-bootstrap,Javascript,Jquery,Html,Css,Twitter Bootstrap,我用bootstrap创建了一个下拉列表。我想动态地禁用和启用下拉列表 html代码: <div class="span3 offset1"> <select name="primary" class="select-block" id="select_alert" style="display: none;"> <option "selected"="">Choose Alert T</option>

我用bootstrap创建了一个下拉列表。我想动态地禁用和启用下拉列表

html代码:

  <div class="span3 offset1">
        <select name="primary" class="select-block" id="select_alert" style="display: none;">
            <option "selected"="">Choose Alert T</option>                         


    <option value="T1">T1</option>

    <option value="T2">T2</option>

    <option value="T3">T3</option>

    <option value="T4">T4</option>

</select>
<div class="btn-group select select-block">
  <i class="dropdown-arrow dropdown-arrow-primary"></i>
  <button class="btn dropdown-toggle clearfix btn-primary" data-toggle="dropdown" id="select_alert">
    <span class="filter-option pull-left">Choose Alert T</span>&nbsp;
    <span class="caret"></span>
  </button>
  <ul class="dropdown-menu dropdown-primary" role="menu">
    <li rel="0" class="selected">
      <a tabindex="-1" href="#" class="">
        <span class="pull-left">Choose Alert T</span>
      </a>
    </li>
    <li rel="1">
      <a tabindex="-1" href="#" class="">
        <span class="pull-left">T1</span>
      </a>
    </li>
    <li rel="2">
      <a tabindex="-1" href="#" class="">
        <span class="pull-left">T2</span></a>
    </li>
    <li rel="3">
      <a tabindex="-1" href="#" class="">
        <span class="pull-left">T3</span>
      </a>
    </li>
    <li rel="4">
      <a tabindex="-1" href="#" class="">
        <span class="pull-left">T4</span>
      </a>
    </li>
  </ul>
  </div>
</div>

选择警报T
T1
T2
T3
T4
选择警报T
有时我想禁用,有时我想启用。那么我该怎么做呢。
在这里,我还有两个下拉元素。所有元素都放在singlw
div
标记中。这里我没有提到
div
标记id名称。我只放了一个下拉元素代码。

通过使用jquery,我们可以

禁用下拉列表

$('.select_alert').attr('data-toggle','');
$('.select_alert').attr('data-toggle','dropdown');
启用下拉列表

$('.select_alert').attr('data-toggle','');
$('.select_alert').attr('data-toggle','dropdown');

通过使用jquery,我们可以

禁用下拉列表

$('.select_alert').attr('data-toggle','');
$('.select_alert').attr('data-toggle','dropdown');
启用下拉列表

$('.select_alert').attr('data-toggle','');
$('.select_alert').attr('data-toggle','dropdown');

是的,通过jquery,您可以得到:

以下是一个例子:

根据您的需要更新了JS代码:

$(document).ready(function() {

        if(!$("#chkdwn2").is(":checked"))
        {
            $("#dropdown").prop("disabled",true);
        }

        $("#chkdwn2").click(function() {
           if ($(this).is(":checked")) { 
              $("#dropdown").prop("disabled", false);
           } else {
              $("#dropdown").prop("disabled", true);  
           }
        });
    });

下拉列表
id替换为您的id。谢谢

是的,通过jquery您可以获得以下信息:

以下是一个例子:

根据您的需要更新了JS代码:

$(document).ready(function() {

        if(!$("#chkdwn2").is(":checked"))
        {
            $("#dropdown").prop("disabled",true);
        }

        $("#chkdwn2").click(function() {
           if ($(this).is(":checked")) { 
              $("#dropdown").prop("disabled", false);
           } else {
              $("#dropdown").prop("disabled", true);  
           }
        });
    });

下拉列表
id替换为您的id。谢谢

您可以通过在属性上添加if块并将禁用的类添加到下拉列表来完成此操作

下面是我的div,我在IsNewEditDisabled上启用了/禁用了下拉切换按钮

<button ng-if="!IsNewEditDisabled" class="btn dropdown-toggle" ng-class="{open: status.isopen}" dropdown-toggle>
                                <i class="fa fa-pencil"></i><span class="caret"></span>
                            </button>
                            <button ng-if="IsNewEditDisabled" class="btn dropdown-toggle disabled" ng-class="{open: status.isopen}" dropdown-toggle>
                                <i class="fa fa-pencil"></i><span class="caret"></span>
                            </button>

您可以通过在属性上添加if块并在下拉列表中添加禁用的类来完成此操作

下面是我的div,我在IsNewEditDisabled上启用了/禁用了下拉切换按钮

<button ng-if="!IsNewEditDisabled" class="btn dropdown-toggle" ng-class="{open: status.isopen}" dropdown-toggle>
                                <i class="fa fa-pencil"></i><span class="caret"></span>
                            </button>
                            <button ng-if="IsNewEditDisabled" class="btn dropdown-toggle disabled" ng-class="{open: status.isopen}" dropdown-toggle>
                                <i class="fa fa-pencil"></i><span class="caret"></span>
                            </button>


将禁用的类添加到按钮。将禁用的类添加到按钮的副本。重复最初我想在启用后下拉列表。我在web控制台页面中尝试了你的代码。它工作正常。我在.js文件中粘贴的代码相同。在这里它不工作。你不需要在js文件上粘贴。编写单独的函数来启用和禁用,并调用该函数确保它工作正常我制作了一个函数,最初,我向该函数传递的数据切换值为null(“”)<代码>未捕获类型错误:无法调用未定义的方法“setAttribute”。最初,我想在启用后下拉。我在web控制台页面中尝试了你的代码。它工作正常。我在.js文件中粘贴的代码相同。在这里它不工作。你不需要在js文件上粘贴。请编写单独的函数来启用和禁用并调用该函数确保它工作,我做了一个函数,最初我传递数据切换值为null(“”)给那个函数<代码>未捕获类型错误:无法调用未定义的方法“setAttribute”。我需要您的JSFIDLE代码,交换trur->false和false->true。这意味着最初我想禁用它。它不起作用。在交换true和false后,您是否单击了“运行”按钮?请将此代码粘贴到javascript中,然后重试:$(文档)。就绪(函数(){if(!$(“#chkdwn2”).is(“:checked”){$(“#dropdown”).prop(“disabled”,true);}$(“#chkdwn2”).click(function(){if($(this).is(:checked”){$(“#dropdown”).prop(“disabled”,false)}否则{$(“#dropdown”).prop disabled,true)}});我需要您的JSFIDLE代码,交换trur->false和false->true。这意味着最初我想禁用它。它不起作用。在交换true和false后您是否单击了“运行”按钮?请将此代码粘贴到javascript中,然后重试:$(文档)。就绪(函数(){if(!$(“#chkdwn2”)。是否(“:选中”){$(“#下拉列表”)。prop(“disabled”,true);}$(“#chkdwn2”)。单击(函数(){if($(this).is(“:checked”){$(“#dropdown”).prop(“disabled”,false);}否则{$(“#dropdown”).prop(“disabled,true);});