【发布时间】:2013-03-04 09:41:39
【问题描述】:
嘿,我有这个 HTML(通过 PHP 循环输出):
<select class="dropdown" id="pa_genre" name="attribute_pa_genre">
<optgroup label="Choose an option:"></optgroup>
<option value="sport" selected="selected">Sport</option>
</select>
还有这个 jQuery(取自 Disable a <select /> if there is only one <option /> with jQuery):
$(document).ready(function(){
var $sca = $("select.dropdown");
if ($sca.find("option").length <= 1) {
$sca.prop('disabled', true);
}
});
但不能让它工作..我在页面上确实有多个下拉菜单具有相同的类(因此为什么定位类而不是 id)。我将attr 更改为prop,因为我确定它是新版本并且attr 不再使用了..
【问题讨论】:
-
看起来工作正常here
-
@AndrewWhitaker 是的,但我会有这样的事情:jsfiddle.net/BTpB9/2
-
我认为逻辑可能有点缺陷,如果页面上有 2 个 select.dropdown 元素,每个元素都有 1 个选项,那么 $sca.find('option' ) 将为 2,即两者都不会被禁用。我会在初始选择器上使用 each,一次处理每个选择器
-
@OJay 很好,这就是为什么我无法弄清楚为什么没有出现错误的原因。
标签: javascript jquery