不可选择的选择选项我要增强现有<select>
标签与附加«查看更多... »行选择时,显示一些GUI控制。当用户点击«查看更多... »我需要的是:触发选择崩溃
- 当前选择
<option>
被保留 - 其他行不能选择
- 下拉关闭
我的第一次尝试失败#1和#2:
jQuery(function($){
$("select").each(function(){
var $more = $("<option>See more...</option>")
.on("click", function(){
alert("Put your fancy AJAX dialogue here");
})
.appendTo($(this));
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<p>Choose «See more...» for more options:</p>
<select>
<optgroup label="America">
<option value="ca">Canada</option>
<option value="us">United States</option>
</optgroup>
<optgroup label="Europe">
<option selected value="fr">France</option>
<option value="uk">United Kinddom</option>
</optgroup>
</select>
如果我添加一个禁用属性«查看更多... »排那么它失败的不同取决于浏览器(Firefox保持下拉开放,Chrome浏览器不会处理的onclick处理器在所有):
jQuery(function($){
$("select").each(function(){
var $more = $("<option>See more...</option>")
.prop("disabled", true)
.on("click", function(){
alert("Put your fancy AJAX dialogue here");
})
.appendTo($(this));
});
});
[disabled] {
font-style: normal;
color: inherit;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<p>Choose «See more...» for more options:</p>
<select>
<optgroup label="America">
<option value="ca">Canada</option>
<option value="us">United States</option>
</optgroup>
<optgroup label="Europe">
<option selected value="fr">France</option>
<option value="uk">United Kinddom</option>
</optgroup>
</select>
任何想法?
是什么#3是什么意思?你的意思是事件处理? – serkan
你到底想做什么? –
@ serkandemirel0420不知道您是否尝试了“运行代码段”按钮,但我刚刚意识到第二个代码段似乎只适用于Firefox。在Firefox中,警报显示,但下拉菜单保持打开状态。在例如Chrome甚至无法点击。 –