qwe*_*rty 9 jquery select internet-explorer
可能重复:
使用jQuery在IE中隐藏选择选项
如下所示,我有两个选择元素.第一个有两个值,1.4和1.7.根据选择的选项,我想禁用第二个选择元素中的某些选项.它在chrome中运行得非常好,但IE是一个婊子(像往常一样!).
有什么想法有什么不对吗?
<p>
<label style="width: 155px; display: inline-block;">Height</label>
<select name="height">
<option value="1.4">1.4</option>
<option value="1.7">1.7</option>
</select>
</p>
<p>
<label style="width: 155px; display: inline-block;">Amount</label>
<select name="slanor">
<option class="four" value="2">2</option>
<option class="four seven" value="3">3</option>
<option class="seven" value="4">4</option>
</select>
</p>
<script>
$(document).ready(function() {
check();
$('select[name=height]').change(function() {
check();
});
function check() {
var slanor = $('select[name=slanor]');
var currHeight = $('select[name=height]').val();
if(currHeight == '1.4') {
slanor.find('option').hide();
slanor.find('.four').show();
} else {
slanor.find('option').hide();
slanor.find('.seven').show();
}
}
});
</script>
Run Code Online (Sandbox Code Playgroud)
Dav*_*und 13
隐藏options
在a select
中的概念在IE中不存在.您必须手动删除并重新添加条目,这可能会带来一些不便.
另一个解决方案是禁用元素:
slanor.find(option).hide().prop('disabled', true);
Run Code Online (Sandbox Code Playgroud)
这将隐藏所有支持它的浏览器中的选项,但在IE中禁用它,这意味着它仍然可见,但在视觉上与其他选项区别开来,并且不可选.
但是:如果你的问题是完全按照你的描述,也有只有两个选择,你的脚本将改变时,最简单的解决办法可能是hide
和show
两个不同的下拉列表完全取决于哪个选项被选中.
归档时间: |
|
查看次数: |
19811 次 |
最近记录: |