Jquery - 检测单击选项禁用 HTML 选择

Lea*_*ing 1 html javascript jquery select

$(function(){

	$("select:option").on('click', this, function(event) {
		event.preventDefault();
		alert("a");
	});
});
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select name="options" id="options">
  <option value="">Select</option>
  <option value="1">Options 1</option>
  <option value="0" disabled="disabled">Options 2</option>
  <option value="0" disabled="disabled">Options 3</option>
  <option value="0" disabled="disabled">Options 4</option>
</select>
Run Code Online (Sandbox Code Playgroud)

我需要检查 Jquery,如果用户单击选择器的选项被禁用,如果用户单击显示alert()

示例: A 选择多个选项,此选择中值为 0 的选项被禁用,但如果用户单击这些选项中的任何一个被禁用,我们将显示一个 alert()

<select name="options" id="options">
  <option value="">Select</option>
  <option value="1">Options 1</option>
  <option value="0" disabled="disabled">Options 2</option>
  <option value="0" disabled="disabled">Options 3</option>
  <option value="0" disabled="disabled">Options 4</option>
</select>
Run Code Online (Sandbox Code Playgroud)

我将不胜感激您的帮助!

小智 6

    $(function(){
        var options_sel_idx = 0;

        $("#options").on("change", this, function(event) {
            if($(this.options[this.selectedIndex]).hasClass("disabled")) {
                alert("a");
                this.selectedIndex = options_sel_idx;
            } else {
                options_sel_idx = this.selectedIndex;
            }
        });
    });
Run Code Online (Sandbox Code Playgroud)
    <style type="text/css">
        .disabled {color:#808080;}
    </style>

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <select name="options" id="options">
      <option value="">Select</option>
      <option value="1">Options 1</option>
      <option value="0" class="disabled">Options 2</option>
      <option value="0" class="disabled">Options 3</option>
      <option value="0" class="disabled">Options 4</option>
    </select>
Run Code Online (Sandbox Code Playgroud)
Run Code Online (Sandbox Code Playgroud)


Copyright Info

© Copyright 2013-2021 admin@qa.1r1g.com

如未特别说明,本网站的内容使用如下协议:
Creative Commons Atution-NonCommercial-ShareAlike 4.0 International license
.

用以下方式浏览
回到顶部