检查是否使用jQuery选择了选项,如果未选择,则选择默认选项
时间:2020-03-06 14:53:03 来源:igfitidea点击:
使用jQuery,如何检查选择菜单中是否有选项,如果没有,则将其中一个选项分配为选中状态。
(选择是通过我刚刚继承的应用程序中的迷宫中的PHP函数生成的,因此当我设法解决这些问题时,这是一个快速的解决方法:)
解决方案
看一下select元素的selectedIndex。顺便说一句,这是普通的DOM事情,而不是特定于JQuery的事情。
无需为此使用jQuery:
var foo = document.getElementById('yourSelect'); if (foo) { if (foo.selectedIndex != null) { foo.selectedIndex = 0; } }
虽然我不确定我们到底想完成什么,但是这段代码对我有用。
<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>
lencioni的答案是我推荐的。我们可以使用" #mySelect option [value ='yourDefaultValue']"来更改选项('#mySelect option:last')
的选择器,以选择具有特定值的选项。有关选择器的更多信息。
如果我们正在使用客户端上的选择列表进行大量操作,请查看此插件:
http://www.texotela.co.uk/code/jquery/select/。如果要查看使用选择列表的更多示例,请查看源代码。
我已经遇到过提到的texotela插件,它可以让我这样解决:
$(document).ready(function(){ if ( $("#context").selectedValues() == false) { $("#context").selectOptions("71"); } });
这是我更改所选选项的功能。它适用于jQuery 1.3.2
function selectOption(select_id, option_val) { $('#'+select_id+' option:selected').removeAttr('selected'); $('#'+select_id+' option[value='+option_val+']').attr('selected','selected'); }
我发现这是一个快速的脚本,可以正常工作...
.Result被分配给标签。
$(".Result").html($("option:selected").text());
你们在选择方面做得太多了。只需按值选择:
$("#mySelect").val( 3 );
简单!默认值应该是第一个选项。完毕!那将导致我们使用不引人注目的JavaScript,因为不需要JavaScript :)
简洁的JavaScript
<script type="text/javascript"> $(document).ready(function() { if (!$("#mySelect option:selected").length) $("#mySelect").val( 3 ); }); </script>
$("option[value*='2']").attr('selected', 'selected'); // 2 for example, add * for every option