jQuery 1.9 和 1.10+ 之间的以下行为有所不同:
<select id="s1">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
$('#s1 option[value=1]').hide();
$('#s1').val('');
此代码背后的想法是选择第一个选项。
1.10之后,$('#s1').val('');
部分不再以同样的方式工作。我想它从来就不应该以这种方式使用,但它的旧代码必须以某种方式进行现代化......
在 jQuery 1.10 之后,没有选择任何内容$('#s1').val()
回报null
.
将代码更改为:
$('#s1 option[value=1]').hide();
$('#s1').val($('#s1 option').first().val());
适用于新旧 jQuery 版本。
我的问题是是否有更短/更优雅的方法来做同样的事情?
$("#s1")[0].selectedIndex = 0;
如果你真的喜欢 jQuery,你也可以这样做:
$("#s1").prop("selectedIndex", 0);
更多这里:https://stackoverflow.com/a/1314266/283863 https://stackoverflow.com/a/1314266/283863
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)