根据使用jquery选择选项禁用按钮?

时间:2016-12-07 09:15:08

标签: jquery

选择选项1 时,必须禁用该按钮,在选择剩余选项时启用该按钮。

$(document).ready(function(){
  if($("option[value='1']")){
     $("button").prop('disabled',true);
    }
  else{
    $("button").prop('disabled',false);
    }
  });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="opt">
  <option value="1">one</option>
  <option value="2">two</option>
  <option value="3">three</option>
</select>
<button>button</button>

4 个答案:

答案 0 :(得分:0)

在你的代码中$("option[value='1']")将返回一个jQuery对象,truthy总是如此,以至于if语句没有任何意义。虽然您的代码仅在加载页面时运行一次。

您需要绑定change事件处理程序,以根据当前值更新按钮。

&#13;
&#13;
$(document).ready(function() {
  // bind change event handler
  $('#opt').change(function() {
    // update disabled property
    $("button").prop('disabled', this.value == 1);
    // trigger change event to set initial value
  }).change();
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="opt">
  <option value="1">one</option>
  <option value="2">two</option>
  <option value="3">three</option>
</select>
<button>button</button>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

&#13;
&#13;
$(document).ready(function() {
  $('#opt').change(function() {
    $("button").prop('disabled', $(this).val() == 1);//will disable if current value is equals to 1

  }).change()

});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="opt">
  <option value="1">one</option>
  <option value="2">two</option>
  <option value="3">three</option>
</select>
<button>button</button>
&#13;
&#13;
&#13;

根据更改事件检查值select,然后根据值设置禁用按钮

答案 2 :(得分:0)

试试这个。如果要显示内容,请删除属性disabled。阅读reference并查看以下示例。

$(document).ready(function(){
  $("button").prop('disabled',true);
  $('#opt').change(function(){
     if($(this).val()==1){
       $("button").attr('disabled','disabled');
      }
    else{
      $("button").removeAttr('disabled');
    }
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="opt">
  <option value="1">one</option>
  <option value="2">two</option>
  <option value="3">three</option>
</select>
<button>button</button>

答案 3 :(得分:0)

您可以尝试这样

&#13;
&#13;
$(document).ready(function () {
        $("#opt").change(function () {
            if ($(this).val() == "1") {
                $("button").prop('disabled', true);
            }
            else {
                $("button").prop('disabled', false);
            }
        })
    });
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="opt">
  <option value="1">one</option>
  <option value="2">two</option>
  <option value="3">three</option>
</select>
<button disabled >button</button>
&#13;
&#13;
&#13;