使用jQuery,你如何检查选择菜单中是否有一个选项,如果没有,分配一个选择的选项。
(选择生成与一个应用程序的PHP函数的迷宫,我刚刚继承,所以这是一个快速修复,而我得到我的脑袋周围的那些:)
使用jQuery,你如何检查选择菜单中是否有一个选项,如果没有,分配一个选择的选项。
(选择生成与一个应用程序的PHP函数的迷宫,我刚刚继承,所以这是一个快速修复,而我得到我的脑袋周围的那些:)
当前回答
你们选的人太多了。只需按值选择:
$("#mySelect").val( 3 );
其他回答
我在找类似的东西,发现了这个:
$('.mySelect:not(:has(option[selected])) option[value="2"]').attr('selected', true);
这将查找类中尚未选定选项的所有选择菜单,并选择默认选项(在本例中为“2”)。
我尝试使用:selected而不是[selected],但这不起作用,因为某些东西总是被选中,即使没有任何属性
lencioni的答案是我推荐的。您可以使用“#mySelect option[value='yourDefaultValue']”更改选项的选择器('#mySelect option:last')来选择具有特定值的选项。更多关于选择器的信息。
如果你在客户端大量使用选择列表,请检查这个插件: http://www.texotela.co.uk/code/jquery/select/。如果您想看到更多使用选择列表的示例,请查看源代码。
简单!默认值应该是第一个选项。完成了!这将引导您使用不引人注目的JavaScript,因为JavaScript不需要:)
低调的JavaScript
虽然我不确定您到底想要完成什么,但这段代码对我来说是有用的。
<select id="mySelect" multiple="multiple">
<option value="1">First</option>
<option value="2">Second</option>
<option value="3">Third</option>
<option value="4">Fourth</option>
</select>
<script type="text/javascript">
$(document).ready(function() {
if (!$("#mySelect option:selected").length) {
$("#mySelect option[value='3']").attr('selected', 'selected');
}
});
</script>
$("#select_box_id").children()[1].selected
这是在jquery中检查一个选项是否被选中的另一种方式。这将返回布尔值(True或False)。
[1]是选择框选项的索引